1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package edu.internet2.middleware.shibboleth.common.attribute.resolver.provider.principalConnector;
18
19 import org.opensaml.common.SAMLObject;
20 import org.opensaml.saml1.core.NameIdentifier;
21 import org.opensaml.saml2.core.NameID;
22
23 import edu.internet2.middleware.shibboleth.common.attribute.resolver.AttributeResolutionException;
24 import edu.internet2.middleware.shibboleth.common.attribute.resolver.provider.ShibbolethResolutionContext;
25
26
27
28
29 public class DirectPrincipalConnector extends BasePrincipalConnector {
30
31
32 public String resolve(ShibbolethResolutionContext resolutionContext) throws AttributeResolutionException {
33 SAMLObject nameIdentifier = resolutionContext.getAttributeRequestContext().getSubjectNameIdentifier();
34
35 if (nameIdentifier instanceof NameIdentifier) {
36 return ((NameIdentifier) nameIdentifier).getNameIdentifier();
37 } else if (nameIdentifier instanceof NameID) {
38 return ((NameID) nameIdentifier).getValue();
39 } else {
40 return null;
41 }
42 }
43
44
45 public void validate() throws AttributeResolutionException {
46
47 }
48 }