Author: dimuthul
Date: Mon Dec 10 00:52:18 2007
New Revision: 10785
Log:
Fixing IDENTITY - 157
Added:
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/EmailActivatorAdmin.java
Modified:
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/UpdateGlobalUserManagementPropertiesAction.java
Modified:
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/UpdateGlobalUserManagementPropertiesAction.java
==============================================================================
---
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/UpdateGlobalUserManagementPropertiesAction.java
(original)
+++
trunk/solutions/identity/modules/admin-ui/src/main/java/org/wso2/solutions/identity/admin/ui/action/UpdateGlobalUserManagementPropertiesAction.java
Mon Dec 10 00:52:18 2007
@@ -18,11 +18,10 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.wso2.solutions.identity.IdentityConstants;
import org.wso2.solutions.identity.IdentityProviderConstants;
import org.wso2.solutions.identity.IdentityProviderException;
+import org.wso2.solutions.identity.admin.EmailActivatorAdmin;
import org.wso2.solutions.identity.admin.ParameterAdmin;
-import org.wso2.utils.ServerConfiguration;
public class UpdateGlobalUserManagementPropertiesAction extends ManagedAction {
@@ -69,48 +68,8 @@
loadMessages();
return ERROR;
}
- admin.createOrUpdatearameter(
- IdentityProviderConstants.PARAM_NAME_EMAIL_PORT,port);
- admin.createOrUpdatearameter(
- IdentityProviderConstants.PARAM_NAME_EMAIL_HOST, host);
- admin
- .createOrUpdatearameter(
-
IdentityProviderConstants.PARAM_NAME_EMAIL_FROM_ADDRESS,
- fromAddress);
-
- ServerConfiguration serverConfig = ServerConfiguration
- .getInstance();
-
- String hostName = serverConfig.getFirstProperty("HostName");
- String hostPort = serverConfig.getFirstProperty("Ports.HTTPS");
-
- String verificationAddress = "https://" + hostName + ":"
- + hostPort
- + IdentityConstants.USER_VERIFICATION_PAGE;
-
- admin
- .createOrUpdatearameter(
-
IdentityProviderConstants.PARAM_NAME_EMAIL_VERIFICATION_EPR,
- verificationAddress);
-
- if (username.length() != 0) {
- admin
- .createOrUpdatearameter(
-
IdentityProviderConstants.PARAM_NAME_EMAIL_USERNAME,
- username);
- admin
- .createOrUpdatearameter(
-
IdentityProviderConstants.PARAM_NAME_EMAIL_PASSWORD,
- password);
- }
-
- admin
- .createOrUpdatearameter(
-
IdentityProviderConstants.PARAM_NAME_ENABLE_EMAIL_VERIFICATION,
- null);
-
-
-
+ EmailActivatorAdmin eadmin = new EmailActivatorAdmin();
+ eadmin.createParamsAndInstanciateEmailVerifier(port, host,
fromAddress, username, password);
} else {
admin
.removeParam(IdentityProviderConstants.PARAM_NAME_ENABLE_EMAIL_VERIFICATION);
Added:
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/EmailActivatorAdmin.java
==============================================================================
--- (empty file)
+++
trunk/solutions/identity/modules/identity-provider/src/main/java/org/wso2/solutions/identity/admin/EmailActivatorAdmin.java
Mon Dec 10 00:52:18 2007
@@ -0,0 +1,78 @@
+package org.wso2.solutions.identity.admin;
+
+import org.wso2.solutions.identity.IdentityConstants;
+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.usermanager.Realm;
+import org.wso2.usermanager.UserManagerException;
+import org.wso2.usermanager.verification.email.EmailVerifier;
+import org.wso2.usermanager.verification.email.EmailVerifierConfig;
+import org.wso2.utils.ServerConfiguration;
+
+public class EmailActivatorAdmin {
+
+ IPPersistenceManager dbman;
+
+ public EmailActivatorAdmin() throws IdentityProviderException {
+ dbman = IPPersistenceManager.getPersistanceManager();
+ }
+
+ public void createParamsAndInstanciateEmailVerifier(String port,
+ String host, String fromAddress, String username, String password)
+ throws IdentityProviderException {
+ ParameterAdmin admin = new ParameterAdmin();
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_EMAIL_PORT, port);
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_EMAIL_HOST, host);
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_EMAIL_FROM_ADDRESS,
+ fromAddress);
+
+ ServerConfiguration serverConfig = ServerConfiguration.getInstance();
+
+ String hostName = serverConfig.getFirstProperty("HostName");
+ String hostPort = serverConfig.getFirstProperty("Ports.HTTPS");
+
+ String verificationAddress = "https://" + hostName + ":" + hostPort
+ + IdentityConstants.USER_VERIFICATION_PAGE;
+
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_EMAIL_VERIFICATION_EPR,
+ verificationAddress);
+
+ if (username.length() != 0) {
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_EMAIL_USERNAME,
+ username);
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_EMAIL_PASSWORD,
+ password);
+ }
+
+ admin.createOrUpdatearameter(
+ IdentityProviderConstants.PARAM_NAME_ENABLE_EMAIL_VERIFICATION,
+ null);
+
+ EmailVerifierConfig config = new EmailVerifierConfig();
+ config.setFromAddress(fromAddress);
+ config.setHost(host);
+ if (username.length() != 0) {
+ config.setPassword(password);
+ config.setUsername(username);
+ }
+ config.setRegistrationServiceEPR(verificationAddress);
+ config.setPort(Integer.parseInt(port));
+
+ Realm realm = UserStore.getInstance().getRealm();
+
+ try {
+ EmailVerifier.init(realm, config);
+ } catch (UserManagerException e) {
+ throw new IdentityProviderException("emailNotActivated");
+ }
+
+ }
+}
_______________________________________________
Identity-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/identity-dev