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