Author: ruchith
Date: Mon Dec 10 01:30:05 2007
New Revision: 10798

Log:

Making sure we automatically disable user registration when ldap, jdbc or wsas 
realm is selected.
Fixed the UI to make sure we don't show the full stack trace when an error 
occurs.



Modified:
   
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/SetDefaultUserStoreAction.java
   trunk/solutions/identity/modules/documentation/src/site/xdoc/ac_sample.xml
   
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/RealmConfigAdmin.java
   
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/InfoCardUserRegistrationSubmitAction.java

Modified: 
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/SetDefaultUserStoreAction.java
==============================================================================
--- 
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/SetDefaultUserStoreAction.java
  (original)
+++ 
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/SetDefaultUserStoreAction.java
  Mon Dec 10 01:30:05 2007
@@ -24,8 +24,6 @@
 import org.wso2.solutions.identity.admin.STSConfigAdmin;
 import org.wso2.solutions.identity.i18n.Messages;
 
-import com.opensymphony.xwork2.ActionSupport;
-
 public class SetDefaultUserStoreAction extends ManagedAction {
 
     private static final long serialVersionUID = 5197582050072207667L;

Modified: 
trunk/solutions/identity/modules/documentation/src/site/xdoc/ac_sample.xml
==============================================================================
--- trunk/solutions/identity/modules/documentation/src/site/xdoc/ac_sample.xml  
(original)
+++ trunk/solutions/identity/modules/documentation/src/site/xdoc/ac_sample.xml  
Mon Dec 10 01:30:05 2007
@@ -33,9 +33,7 @@
  "wsasRealmForAccessControlSample" user store configuration as the default user
  store in "User Stores" configuration.
  </p>
- <p><strong>NOTE </strong>: This user store does not suport user signup. Please
- disable user registration using the "Manage -> Users -> Allow User 
Registration"
- option.</p>
+
 <h3>Step 3 : Define claims</h3>
 
 <p>

Modified: 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/RealmConfigAdmin.java
==============================================================================
--- 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/RealmConfigAdmin.java
    (original)
+++ 
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/RealmConfigAdmin.java
    Mon Dec 10 01:30:05 2007
@@ -20,12 +20,17 @@
 import java.util.Map;
 import java.util.Set;
 
+import org.wso2.solutions.identity.IdentityProviderConstants;
 import org.wso2.solutions.identity.IdentityProviderException;
 import org.wso2.solutions.identity.UserStore;
 import org.wso2.solutions.identity.persistence.IPPersistenceManager;
 import org.wso2.solutions.identity.persistence.dataobject.RealmConfigurationDO;
 import 
org.wso2.solutions.identity.persistence.dataobject.RealmConfigurationPropertyDO;
 import org.wso2.solutions.identity.persistence.dataobject.RealmDO;
+import org.wso2.solutions.identity.users.wsas.WSASRealm;
+import org.wso2.usermanager.custom.jdbc.JDBCRealm;
+import org.wso2.usermanager.custom.ldap.LDAPRealm;
+import org.wso2.usermanager.readwrite.DefaultRealm;
 
 public class RealmConfigAdmin {
 
@@ -65,6 +70,25 @@
         // Now reset claim mappings
         ClaimsAdmin claimsAdmin = new ClaimsAdmin();
         claimsAdmin.resetClaimMappings();
+        
+        //Disable user registration for WSAS sample, JDBC and LDAP realms
+        String realmClassName = config.getRealm().getClassName();
+        if(realmClassName.equals(JDBCRealm.class.getName()) ||
+               realmClassName.equals(LDAPRealm.class.getName()) ||
+               realmClassName.equals(WSASRealm.class.getName())) {
+            ParameterAdmin paramAdmin = new ParameterAdmin();
+            if(paramAdmin.getParameter(
+                    
IdentityProviderConstants.PARAM_NAME_ALLOW_USER_REGISTRATION) 
+                        != null) {
+                    paramAdmin.removeParam(
+                            
IdentityProviderConstants.PARAM_NAME_ALLOW_USER_REGISTRATION);
+            }
+        } else if (realmClassName.equals(DefaultRealm.class.getName())) {
+            ParameterAdmin paramAdmin = new ParameterAdmin();
+            paramAdmin.createOrUpdatearameter(
+                    
IdentityProviderConstants.PARAM_NAME_ALLOW_USER_REGISTRATION,
+                    null);
+        }
     }
 
     public RealmConfigurationDO getRealmConfiguration(String name)

Modified: 
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/InfoCardUserRegistrationSubmitAction.java
==============================================================================
--- 
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/InfoCardUserRegistrationSubmitAction.java
 (original)
+++ 
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/InfoCardUserRegistrationSubmitAction.java
 Mon Dec 10 01:30:05 2007
@@ -54,25 +54,30 @@
             return ERROR;
         }
         
-        UserStore store = UserStore.getInstance();
-        
-        String userName = IdentityProviderUtil.getPPIDDisplayValue(ppid);
-        store.getRealm().getUserStoreAdmin().addUser(userName, 
UUIDGenerator.getUUID());
+        try {
+            UserStore store = UserStore.getInstance();
+            
+            String userName = IdentityProviderUtil.getPPIDDisplayValue(ppid);
+            store.getRealm().getUserStoreAdmin().addUser(userName, 
UUIDGenerator.getUUID());
 
-        ClaimsAdmin ClaimsAdmin = new ClaimsAdmin();
-        ClaimDO[] claimDOs = ClaimsAdmin.getAllMappedEnabledClaims();
-        HashMap props = new HashMap();
+            ClaimsAdmin ClaimsAdmin = new ClaimsAdmin();
+            ClaimDO[] claimDOs = ClaimsAdmin.getAllMappedEnabledClaims();
+            HashMap props = new HashMap();
 
-        for (int i = 0; i < claimDOs.length; i++) {
-            props.put(claimDOs[i].getUri(), (String) 
request.getAttribute(claimDOs[i].getUri()));
-        }
-        store.getRealm().getUserStoreAdmin().setUserProperties(userName, 
props);
+            for (int i = 0; i < claimDOs.length; i++) {
+                props.put(claimDOs[i].getUri(), (String) 
request.getAttribute(claimDOs[i].getUri()));
+            }
+            store.getRealm().getUserStoreAdmin().setUserProperties(userName, 
props);
 
-        String issuerInfo = (String) 
request.getAttribute(TokenVerifierConstants.ISSUER_INFO);
-        admin.registerNewInfoCardInformation(ppid, userName, issuerInfo);
-        
-        this.addInfoMessage(getText("user_successfully_added",
-                new String[] { userName }));
+            String issuerInfo = (String) 
request.getAttribute(TokenVerifierConstants.ISSUER_INFO);
+            admin.registerNewInfoCardInformation(ppid, userName, issuerInfo);
+            
+            this.addInfoMessage(getText("user_successfully_added",
+                    new String[] { userName }));
+        } catch (RuntimeException e) {
+            this.addActionError(e.getMessage());
+            return ERROR;
+        }
         
         return SUCCESS;
     }

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

Reply via email to