Author: prabath
Date: Mon Mar  3 23:08:32 2008
New Revision: 14488

Log:

adding PAPAE support + formatting

Modified:
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/OpenIDExtensionFactory.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDAttributeExchange.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDExtension.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDPape.java
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDSimpleReg.java
   
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/OpenIDExtensionFactory.java
   
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/extensions/OpenIDPape.java

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/OpenIDExtensionFactory.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/OpenIDExtensionFactory.java
     (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/OpenIDExtensionFactory.java
     Mon Mar  3 23:08:32 2008
@@ -2,10 +2,12 @@
 
 import org.openid4java.message.AuthRequest;
 import org.openid4java.message.ax.AxMessage;
+import org.openid4java.message.pape.PapeMessage;
 import org.openid4java.message.sreg.SRegMessage;
 import org.wso2.solutions.identity.IdentityConstants;
 import org.wso2.solutions.identity.openid.extensions.OpenIDAttributeExchange;
 import org.wso2.solutions.identity.openid.extensions.OpenIDExtension;
+import org.wso2.solutions.identity.openid.extensions.OpenIDPape;
 import org.wso2.solutions.identity.openid.extensions.OpenIDSimpleReg;
 
 public class OpenIDExtensionFactory {
@@ -41,6 +43,9 @@
                 
.hasExtension(IdentityConstants.OpenId.SimpleRegAttributes.NS_SREG)
                 || auth.hasExtension(SRegMessage.OPENID_NS_SREG)) {
             return new OpenIDSimpleReg(auth);
+        }else if (auth
+                .hasExtension(PapeMessage.OPENID_NS_PAPE)) {
+            return new OpenIDPape(auth);
         }
 
         return null;

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDAttributeExchange.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDAttributeExchange.java
 (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDAttributeExchange.java
 Mon Mar  3 23:08:32 2008
@@ -32,6 +32,13 @@
         this.authRequest = authRequest;
     }
 
+    /**
+     * Creates an instance of MessageExtension for the OpenID authentication
+     * response
+     * @param request OpenID authentication request
+     * @return An instance of MessageExtension
+     * @throws RelyingPartyException
+     */
     public MessageExtension getMessageExtension(String userId,
             String profileName) throws IdentityProviderException {
 

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDExtension.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDExtension.java
 (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDExtension.java
 Mon Mar  3 23:08:32 2008
@@ -17,7 +17,8 @@
 public abstract class OpenIDExtension {
 
     /**
-     * Creates an instance of MessageExtension for the OpenID authentication 
response
+     * Creates an instance of MessageExtension for the OpenID authentication
+     * response
      * @param request OpenID authentication request
      * @return An instance of MessageExtension
      * @throws RelyingPartyException
@@ -91,8 +92,8 @@
                         .getAttrId()));
                 openIDClaim.setTypeUri(claim.getUri());
                 if (openIDTagMapping != null)
-                    openIDClaim.setOpenIDTag((String) 
openIDTagMapping.get(claim
-                            .getOpenIDTag()));
+                    openIDClaim.setOpenIDTag((String) openIDTagMapping
+                            .get(claim.getOpenIDTag()));
                 else
                     openIDClaim.setOpenIDTag(claim.getOpenIDTag());
                 if (openIDClaim.getClaimValue() != null)

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDPape.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDPape.java
      (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDPape.java
      Mon Mar  3 23:08:32 2008
@@ -1,15 +1,22 @@
 package org.wso2.solutions.identity.openid.extensions;
 
+import java.util.List;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.openid4java.message.AuthRequest;
+import org.openid4java.message.MessageException;
 import org.openid4java.message.MessageExtension;
+import org.openid4java.message.pape.PapeMessage;
+import org.openid4java.message.pape.PapeRequest;
+import org.openid4java.message.pape.PapeResponse;
+import org.wso2.solutions.identity.IdentityConstants;
 import org.wso2.solutions.identity.IdentityProviderException;
 
 public class OpenIDPape extends OpenIDExtension {
-    
+
     private AuthRequest authRequest;
-    
+
     private static Log log = LogFactory.getLog(OpenIDPape.class);
 
     /**
@@ -20,10 +27,40 @@
         this.authRequest = authRequest;
     }
 
-    public MessageExtension getMessageExtension(String userId, String 
profileName)
-            throws IdentityProviderException {
-        // TODO Auto-generated method stub
-        return null;
-    }
+    /**
+     * Creates an instance of MessageExtension for the OpenID authentication
+     * response
+     * @param request OpenID authentication request
+     * @return An instance of MessageExtension
+     * @throws RelyingPartyException
+     */
+    public MessageExtension getMessageExtension(String userId,
+            String profileName) throws IdentityProviderException {
 
+        MessageExtension message = null;
+        PapeRequest papeRequest = null;
+        PapeResponse papeResponse = null;
+        List preferredPolicies = null;
+
+        try {
+            message = authRequest.getExtension(PapeMessage.OPENID_NS_PAPE);
+
+            if (message instanceof PapeRequest) {
+                papeRequest = (PapeRequest) message;
+                preferredPolicies = papeRequest.getPreferredAuthPoliciesList();
+                papeResponse = PapeResponse.createPapeResponse();
+                papeResponse.setNistAuthLevel(1);
+                papeResponse.setAuthAge(-1);
+            }
+            
+          //TODO:
+
+        } catch (MessageException e) {
+            throw new IdentityProviderException(
+                    IdentityConstants.ErrorCodes.OPENID_RESP_GENERATION_FAILED,
+                    e);
+        }
+
+        return papeResponse;
+    }
 }

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDSimpleReg.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDSimpleReg.java
 (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/openid/extensions/OpenIDSimpleReg.java
 Mon Mar  3 23:08:32 2008
@@ -32,6 +32,13 @@
         this.authRequest = authRequest;
     }
 
+    /**
+     * Creates an instance of MessageExtension for the OpenID authentication
+     * response
+     * @param request OpenID authentication request
+     * @return An instance of MessageExtension
+     * @throws RelyingPartyException
+     */
     public MessageExtension getMessageExtension(String userId,
             String profileName) throws IdentityProviderException {
         MessageExtension extension = null;

Modified: 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/OpenIDExtensionFactory.java
==============================================================================
--- 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/OpenIDExtensionFactory.java
      (original)
+++ 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/OpenIDExtensionFactory.java
      Mon Mar  3 23:08:32 2008
@@ -2,6 +2,7 @@
 
 import org.openid4java.message.AuthSuccess;
 import org.openid4java.message.ax.AxMessage;
+import org.openid4java.message.pape.PapeMessage;
 import org.openid4java.message.sreg.SRegMessage;
 import org.wso2.solutions.identity.IdentityConstants;
 import 
org.wso2.solutions.identity.relyingparty.openid.extensions.OpenIDAttributeExchange;
@@ -61,9 +62,11 @@
                 
.hasExtension(IdentityConstants.OpenId.SimpleRegAttributes.NS_SREG)
                 || auth.hasExtension(SRegMessage.OPENID_NS_SREG)) {
             return new OpenIDSimpleReg(auth);
+        }else if (auth
+                .hasExtension(PapeMessage.OPENID_NS_PAPE)) {
+            return new OpenIDPape(auth);
         }
 
         return null;
     }
-
 }

Modified: 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/extensions/OpenIDPape.java
==============================================================================
--- 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/extensions/OpenIDPape.java
       (original)
+++ 
trunk/solutions/identity/modules/token-verifier-core/src/main/java/org/wso2/solutions/identity/relyingparty/openid/extensions/OpenIDPape.java
       Mon Mar  3 23:08:32 2008
@@ -3,9 +3,12 @@
 import javax.servlet.http.HttpServletRequest;
 
 import org.openid4java.message.AuthSuccess;
+import org.openid4java.message.MessageException;
 import org.openid4java.message.MessageExtension;
 import org.openid4java.message.pape.PapeMessage;
 import org.openid4java.message.pape.PapeRequest;
+import org.openid4java.message.pape.PapeResponse;
+import org.wso2.solutions.identity.IdentityConstants;
 import org.wso2.solutions.identity.relyingparty.RelyingPartyException;
 import org.wso2.solutions.identity.relyingparty.openid.AuthPolicyType;
 import 
org.wso2.solutions.identity.relyingparty.openid.OpenIDAuthenticationRequest;
@@ -72,7 +75,21 @@
      */
     public void setSessionAttributes(HttpServletRequest request)
             throws RelyingPartyException {
-        // TODO Auto-generated method stub
+        try {
 
+            PapeResponse papeResponse = null;
+
+            if (authSuccess.hasExtension(PapeResponse.OPENID_NS_PAPE)) {
+                papeResponse = (PapeResponse) authSuccess
+                        .getExtension(PapeResponse.OPENID_NS_PAPE);
+            }
+
+            //TODO:
+
+        } catch (MessageException e) {
+            throw new RelyingPartyException(
+                    IdentityConstants.ErrorCodes.OPENID_AUTHENTICATION_FAILED,
+                    e);
+        }
     }
 }

_______________________________________________
Identity-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/identity-dev

Reply via email to