Author: prabath
Date: Tue Feb 19 01:52:30 2008
New Revision: 13883
Log:
adding user profiles
Added:
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/AddUserProfileAction.java
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/AddUserProfileSubmitAction.java
trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/adduserprofile.jsp
Added:
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/AddUserProfileAction.java
==============================================================================
--- (empty file)
+++
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/AddUserProfileAction.java
Tue Feb 19 01:52:30 2008
@@ -0,0 +1,37 @@
+package org.wso2.solutions.identity.user.ui.action;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.wso2.solutions.identity.admin.ClaimsAdmin;
+import org.wso2.solutions.identity.persistence.dataobject.ClaimDO;
+
+import com.opensymphony.xwork2.ActionSupport;
+
+public class AddUserProfileAction extends ActionSupport {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = -3415602317665292286L;
+
+ private List claims;
+
+ public String execute() throws Exception {
+
+ ClaimsAdmin ClaimsAdmin = new ClaimsAdmin();
+ ClaimDO[] claimDOs = ClaimsAdmin.getAllMappedEnabledClaims();
+ this.claims = Arrays.asList((ClaimDO[]) claimDOs);
+
+ return SUCCESS;
+ }
+
+ public List getClaims() {
+ return claims;
+ }
+
+ public void setClaims(List claims) {
+ this.claims = claims;
+ }
+
+}
Added:
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/AddUserProfileSubmitAction.java
==============================================================================
--- (empty file)
+++
trunk/solutions/identity/modules/user-ui/src/main/java/org/wso2/solutions/identity/user/ui/action/AddUserProfileSubmitAction.java
Tue Feb 19 01:52:30 2008
@@ -0,0 +1,90 @@
+package org.wso2.solutions.identity.user.ui.action;
+
+import java.util.HashMap;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.apache.struts2.StrutsStatics;
+import org.wso2.solutions.identity.IdentityConstants;
+import org.wso2.solutions.identity.UserStore;
+import org.wso2.solutions.identity.admin.ClaimsAdmin;
+import org.wso2.solutions.identity.persistence.dataobject.ClaimDO;
+import org.wso2.solutions.identity.user.ui.UIConstants;
+import org.wso2.solutions.identity.users.IdentityDefaultRealm;
+import org.wso2.solutions.identity.users.IdentityUserStoreAdmin;
+import org.wso2.solutions.identity.users.IdentityUserStoreReader;
+import org.wso2.usermanager.UserManagerException;
+
+import com.opensymphony.xwork2.ActionContext;
+
+public class AddUserProfileSubmitAction extends ManagedAction {
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 6178599086703749725L;
+
+ private String profileName;
+
+ public String getProfileName() {
+ return profileName;
+ }
+
+ public void setProfileName(String profileName) {
+ this.profileName = profileName;
+ }
+
+ public String execute() throws Exception {
+
+ String userName = null;
+ HttpServletRequest request = (HttpServletRequest) ActionContext
+ .getContext().get(StrutsStatics.HTTP_REQUEST);
+
+ userName = (String)
request.getSession().getAttribute(UIConstants.USER);
+
+ if (userName == null)
+ return ERROR;
+
+ ClaimsAdmin ClaimsAdmin = new ClaimsAdmin();
+ ClaimDO[] claimDOs = ClaimsAdmin.getAllMappedEnabledClaims();
+
+ HashMap<String, String> props = new HashMap<String, String>();
+ for (int i = 0; i < claimDOs.length; i++) {
+ String uri = claimDOs[i].getUri();
+ if (!uri.equals(IdentityConstants.CLAIM_PPID)) {
+ if (request.getParameter(uri) != null
+ && request.getParameter(uri).trim().length() > 0)
+ props.put(uri, request.getParameter(uri));
+ }
+ }
+
+ try {
+
+ IdentityDefaultRealm realm = null;
+ IdentityUserStoreReader reader = null;
+ IdentityUserStoreAdmin admin = null;
+
+ realm = (IdentityDefaultRealm) UserStore.getInstance().getRealm();
+ admin = realm.getIdentityUserStoreAdmin();
+ reader = realm.getIdentityUserStoreReader();
+
+ if (reader.isExistingUserProfile(userName, profileName)) {
+ this.addErrorMessage(getText("sign_in_user_exist",
+ new String[] { profileName }));
+ loadMessages();
+ return ERROR;
+ } else {
+ admin.setUserProperties(userName, props, profileName);
+ }
+
+ } catch (UserManagerException e) {
+ String msg = getText("error_unexpected", new String[] { e
+ .getMessage() });
+ this.addErrorMessage(msg);
+ return ERROR;
+ }
+
+ return SUCCESS;
+ }
+
+}
Added:
trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/adduserprofile.jsp
==============================================================================
--- (empty file)
+++
trunk/solutions/identity/modules/user-ui/src/main/webapp/jsp/adduserprofile.jsp
Tue Feb 19 01:52:30 2008
@@ -0,0 +1,84 @@
+<%@ taglib prefix="s" uri="/struts-tags"%>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+"http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+<title>WSO2 Identity Solution</title>
+<link type="text/css" rel="stylesheet" href="css/styles.css" />
+</head>
+<body>
+<!-- Include the header -->
+<s:include value="header.jsp" />
+
+<table cellpadding="0" cellspacing="0" border="0" style="width: 100%;">
+ <tr>
+ <td class="right-back"></td>
+ <td class="content" valign="top">
+ <table cellpadding="0" cellspacing="0" border="0" style="width:
100%;">
+ <tr>
+ <td>
+ <h1>WSO2 Identity Provider</h1>
+ </td>
+ <td align="right" valign="top"><img
+
src="images/wso2-identity-content-rounded.jpg" align="top" /></td>
+ </tr>
+ </table>
+
+ <br>
+
+ <s:iterator value="errorMessages">
+ <div class="error-message"><s:property /></div>
+ </s:iterator> <s:iterator value="infoMessages">
+ <div class="info-message"><s:property /></div>
+ </s:iterator>
+
+ <table cellpadding="0" cellspacing="10" border="0"
+ class="login-header">
+ <tr>
+ <td valign="top" width="30%">
+ <form action="AddUserProfileSubmit.action"
method="post">
+ <strong>Add new profile to your user
account</strong><br />
+ <!--todo -->
+ <div class="errors"><s:actionerror />
<s:fielderror /></div>
+ <i>Required fields <font
class="required">*</font> </i>
+ <table cellpadding="0" cellspacing="10"
border="0"
+ class="form-table">
+ <tr>
+ <td>Unique Profile Name</td>
+ <td width="2"><font
class="required">*</font></td>
+ <td><input type="text"
name="profileName"></td>
+ </tr>
+ <s:iterator value="claims">
+ <tr>
+ <td><s:property
value="displayTag" /></td>
+ <td width="2"><s:if
test="optional==false">
+ <font
class="required">*</font>
+ </s:if></td>
+ <td><input type="text"
name="<s:property value="uri" />"></td>
+ </tr>
+ </s:iterator>
+
+ <tr>
+ <td></td>
+ <td></td>
+ <td><input type="submit"
value="Add Profile" class="button">
+ <input type="button"
value="Cancel"
+
onClick="javascript:window.location = 'ShowMain.action'"
+ class="button"></td>
+ </tr>
+ </table>
+ </form>
+ </td>
+
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+
+<!-- Include footer -->
+<s:include value="footer.jsp" />
+
+</body>
+
+</html>
\ No newline at end of file
_______________________________________________
Identity-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/identity-dev