Changeset 7296 for TI12-security


Ignore:
Timestamp:
06/08/10 15:01:00 (9 years ago)
Author:
pjkersha
Message:

Incomplete - task 12: ESG Yadis identity service discovery

  • Working code but needs Attribute Service callout stub to be filled
Location:
TI12-security/trunk/EsgYadisParser/src/org/earthsystemgrid/security
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TI12-security/trunk/EsgYadisParser/src/org/earthsystemgrid/security/openid2emailresolution/OpenId2EmailAddrResolution.java

    r7295 r7296  
    88import java.security.NoSuchAlgorithmException; 
    99import java.security.cert.CertificateException; 
     10import java.util.Arrays; 
    1011import java.util.Collections; 
    1112import java.util.HashSet; 
     
    2728        public static final String DEF_ATTRIBUTE_SERVICE_XRD_SERVICE_TYPE = "urn:esg:security:attribute-service"; 
    2829         
    29         OpenId2EmailAddrResolution(String attributeServiceType) { 
     30        public OpenId2EmailAddrResolution(String attributeServiceType) { 
    3031                super(); 
    3132                if (this.attributeServiceType == null) 
     
    3435                        this.attributeServiceType = attributeServiceType; 
    3536 
     37        } 
     38         
     39        public OpenId2EmailAddrResolution() { 
     40                this(null); 
    3641        } 
    3742         
     
    5459                // Sort into Priority order making use of XrdsServiceElem's compareTo 
    5560                // logic 
     61                // TODO: verify this is working correctly! 
    5662                Collections.sort(serviceElems); 
    5763                 
    58                 // Get Attribute Service URI from service endpoint 
    59                 for (XrdsServiceElem serviceEndpoint: serviceElems) { 
    60                         URL attributeServiceEndpoint = null; 
    61                         try { 
    62                                 attributeServiceEndpoint = new URL(serviceEndpoint.getUri()); 
    63                         } catch (MalformedURLException e) { 
    64                                 throw new AttributeServiceQueryException("Attribute Service " + 
    65                                                 "URI " + attributeServiceEndpoint + " is invalid", e); 
    66                         } 
     64                // Get Attribute Service URI from service element with the highest  
     65                // priority 
     66                XrdsServiceElem priorityAttributeServiceElem = serviceElems.get(0); 
     67                URL attributeServiceEndpoint = null; 
     68                try { 
     69                        attributeServiceEndpoint = new URL(priorityAttributeServiceElem.getUri()); 
     70                 
     71                } catch (MalformedURLException e) { 
     72                        throw new AttributeServiceQueryException("Attribute Service " + 
     73                                        "URI " + attributeServiceEndpoint + " is invalid", e); 
     74                } 
    6775                          
    68                          // Call Attribute Service querying for e-mail address 
    69                          InternetAddress emailAddr = queryAttributeService(attributeServiceEndpoint); 
    70                          return emailAddr; 
    71                 } 
     76                 // Call Attribute Service querying for e-mail address 
     77                 InternetAddress emailAddr = queryAttributeService(attributeServiceEndpoint); 
     78                 return emailAddr; 
     79        } 
     80         
     81        /* 
     82         * Call Attribute Service to retrieve user's e-mail address 
     83         */ 
     84        protected InternetAddress queryAttributeService(URL attributeServiceEndpoint) 
     85        { 
     86                // TODO: Add Attribute Service call here 
    7287                return null; 
    7388        } 
    74          
    75         protected InternetAddress queryAttributeService(URL attributeServiceEndpoint) 
     89        public static void main(String[] args) throws IOException,  
     90                NoMatchingXrdsServiceException,  
     91                XrdsParseException,  
     92                YadisRetrievalException,  
     93                AttributeServiceQueryException 
    7694        { 
    77                 return null; 
     95                OpenId2EmailAddrResolution openid2EmailAddr = new OpenId2EmailAddrResolution(); 
     96                 
     97//              URL yadisURL = new URL("https://ceda.ac.uk/openid/Philip.Kershaw"); 
     98                URL yadisURL = new URL("https://localhost:7443/openid/PJKershaw"); 
     99                InternetAddress emailAddr = null; 
     100                emailAddr = openid2EmailAddr.resolve(yadisURL); 
    78101        } 
    79102} 
     103 
  • TI12-security/trunk/EsgYadisParser/src/org/earthsystemgrid/security/yadis/YadisRetrieval.java

    r7294 r7296  
    8585                } 
    8686 
    87                 XrdsDoc xrdsDoc = new XrdsDoc(); 
     87                Xrds xrdsDoc = new XrdsDoc(); 
    8888                List serviceElems = xrdsDoc.parse(yadisDocContent, targetTypes); 
    8989                return serviceElems; 
Note: See TracChangeset for help on using the changeset viewer.