[jboss-svn-commits] JBL Code SVN: r22718 - labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Sep 12 09:25:04 EDT 2008


Author: szimano
Date: 2008-09-12 09:25:04 -0400 (Fri, 12 Sep 2008)
New Revision: 22718

Modified:
   labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsAuthenticationProvider.java
   labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsUser.java
Log:
support for profile values

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsAuthenticationProvider.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsAuthenticationProvider.java	2008-09-12 12:01:35 UTC (rev 22717)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsAuthenticationProvider.java	2008-09-12 13:25:04 UTC (rev 22718)
@@ -9,7 +9,10 @@
 import java.sql.SQLException;
 import java.util.ArrayList;
 import java.util.Date;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.concurrent.Callable;
 import java.util.logging.Level;
 import java.util.logging.Logger;
@@ -20,7 +23,6 @@
 import org.acegisecurity.providers.UsernamePasswordAuthenticationToken;
 import org.acegisecurity.userdetails.UserDetails;
 import org.acegisecurity.userdetails.UserDetailsService;
-import org.springframework.context.ApplicationContext;
 
 import com.jivesoftware.base.User;
 import com.jivesoftware.base.UserAlreadyExistsException;
@@ -28,12 +30,20 @@
 import com.jivesoftware.base.UserTemplate;
 import com.jivesoftware.community.aaa.JiveUserDetails;
 import com.jivesoftware.community.aaa.authz.SystemExecutor;
+import com.jivesoftware.community.user.profile.ProfileField;
+import com.jivesoftware.community.user.profile.ProfileFieldManager;
+import com.jivesoftware.community.user.profile.ProfileFieldValue;
+import com.jivesoftware.community.user.profile.ProfileManager;
 
 public class LabsAuthenticationProvider implements AuthenticationProvider {
 
 	private UserManager userManager;
 
 	private UserDetailsService userDetailsService;
+	
+	private ProfileManager profileManager;
+	
+	private ProfileFieldManager profileFieldManager;
 
 	private String dbUserName = null;
 	private String dbPass = null;
@@ -119,8 +129,10 @@
 							// final UserTemplate toUpdate =
 							// mapAttributesToTemplate(attrs, ut);
 							
-							ut.setPasswordHash(nukeUser.getPasswordHash());
+							ut = mapDetails(ut, nukeUser);
 							
+							//ut.setPasswordHash(nukeUser.getPasswordHash());
+							
 							final UserTemplate toUpdate = ut;
 							
 							toUpdate.setID(ut.getID());
@@ -142,6 +154,25 @@
 											ex);
 						}
 					}
+					
+					// update profile
+					Map<String, String> profile = nukeUser.getProfile();
+					User u = userManager.getUser(nukeUser.getUsername());
+					Set<ProfileFieldValue> pfvSet = new HashSet<ProfileFieldValue>();
+					
+					for (ProfileField pf : profileFieldManager.getDefaultFields()) {
+						System.out.println(pf);
+						if (profile.get(pf.getName()) != null) {
+							ProfileFieldValue pfv = new ProfileFieldValue(pf);
+							pfv.setValue(profile.get(pf.getName()));
+							
+							pfvSet.add(pfv);
+						}
+					}
+					
+					if (!pfvSet.isEmpty()) {
+						profileManager.setProfile(u, pfvSet);
+					}
 
 					if (!nukeUser.getPasswordHash().equals(passHashed)) {
 						throw new BadCredentialsException("Username:"
@@ -179,7 +210,8 @@
 		ut.setLastName(nukeUser.getLastName());
 		ut.setName(nukeUser.getName());
 		ut.setPasswordHash(nukeUser.getPasswordHash());
-
+		ut.setProperties(nukeUser.getProperties());
+		
 		return ut;
 	}
 
@@ -337,4 +369,20 @@
 		}
 	}
 
+	public ProfileManager getProfileManager() {
+		return profileManager;
+	}
+
+	public void setProfileManager(ProfileManager profileManager) {
+		this.profileManager = profileManager;
+	}
+
+	public ProfileFieldManager getProfileFieldManager() {
+		return profileFieldManager;
+	}
+
+	public void setProfileFieldManager(ProfileFieldManager profileFieldManager) {
+		this.profileFieldManager = profileFieldManager;
+	}
+
 }

Modified: labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsUser.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsUser.java	2008-09-12 12:01:35 UTC (rev 22717)
+++ labs/jbosslabs/labs-3.0-build/integration/cs-nukes-login/src/main/java/org/jboss/labs/clearspace/LabsUser.java	2008-09-12 13:25:04 UTC (rev 22718)
@@ -11,6 +11,7 @@
 import com.jivesoftware.base.User;
 import com.jivesoftware.community.Permissions;
 import com.jivesoftware.community.cache.Cacheable;
+import com.jivesoftware.community.user.profile.ProfileFieldValue;
 import com.jivesoftware.community.webservices.WSUser;
 
 public class LabsUser implements User, Cacheable {
@@ -31,6 +32,7 @@
 	private String username;
 	private String firstName;
 	private String lastName;
+	private Map<String, String> profile;
 	
 	public LabsUser() {
 		
@@ -47,7 +49,15 @@
 		passHash = rs.getString("pn_pass");
 		firstName = rs.getString("pn_fname");
 		lastName = rs.getString("pn_lname");
+		
+		profile = new HashMap<String, String>();
+		profile.put("Phone Number", rs.getString("pn_phone"));
+		
 	}
+	
+	public Map<String, String> getProfile() {
+		return profile;
+	}
 
 	public LabsUser(String username) {
 		this.username = username;
@@ -92,7 +102,7 @@
 
 	public Map<String, String> getProperties() {
 		// TODO Auto-generated method stub
-		return new HashMap<String, String>();
+		return new HashMap<String, String>() ;
 	}
 
 	public String getUsername() {




More information about the jboss-svn-commits mailing list