1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package edu.internet2.middleware.shibboleth.common.config.security;
18
19 import org.opensaml.saml2.metadata.provider.MetadataProvider;
20 import org.opensaml.security.MetadataCredentialResolver;
21 import org.opensaml.security.MetadataCredentialResolverFactory;
22 import org.opensaml.xml.security.trust.ExplicitKeyTrustEngine;
23 import org.springframework.beans.factory.config.AbstractFactoryBean;
24
25
26
27
28 public class MetadataExplicitKeyTrustEngineFactoryBean extends AbstractFactoryBean {
29
30
31 private MetadataProvider metadataProvider;
32
33
34
35
36
37
38 public MetadataProvider getMetadataProvider() {
39 return metadataProvider;
40 }
41
42
43
44
45
46
47 public void setMetadataProvider(MetadataProvider provider) {
48 metadataProvider = provider;
49 }
50
51
52 public Class getObjectType() {
53 return ExplicitKeyTrustEngine.class;
54 }
55
56
57 protected Object createInstance() throws Exception {
58 MetadataCredentialResolverFactory mcrFactory = MetadataCredentialResolverFactory.getFactory();
59 MetadataCredentialResolver credResolver = mcrFactory.getInstance(getMetadataProvider());
60 return new ExplicitKeyTrustEngine(credResolver);
61 }
62 }