1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package edu.internet2.middleware.shibboleth.common.config;
18
19 import java.util.List;
20
21 import org.opensaml.DefaultBootstrap;
22 import org.opensaml.util.resource.Resource;
23 import org.opensaml.xml.XMLConfigurator;
24 import org.slf4j.Logger;
25 import org.slf4j.LoggerFactory;
26 import org.springframework.beans.factory.InitializingBean;
27
28
29
30
31 public class OpensamlConfigBean implements InitializingBean {
32
33
34 private final Logger log = LoggerFactory.getLogger(OpensamlConfigBean.class);
35
36
37 private List<Resource> configResources;
38
39
40
41
42
43
44 public OpensamlConfigBean(List<Resource> configs){
45 configResources = configs;
46 }
47
48
49 public void afterPropertiesSet() throws Exception {
50 DefaultBootstrap.bootstrap();
51
52 if(configResources != null && !configResources.isEmpty()){
53 XMLConfigurator configurator = new XMLConfigurator();
54 for(Resource config : configResources){
55 try{
56 log.debug("Loading OpenSAML configuration file: {}", config.getLocation());
57 configurator.load(config.getInputStream());
58 }catch(Exception e){
59 log.error("Unable to load OpenSAML configuration file: " + config.getLocation());
60 }
61 }
62 }
63 }
64 }