[jboss-svn-commits] JBL Code SVN: r33280 - in labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main: java/org/jboss/labs/sbs/plugin/nukesauth/filter and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Jun 1 07:09:03 EDT 2010
Author: lkrzyzanek
Date: 2010-06-01 07:09:03 -0400 (Tue, 01 Jun 2010)
New Revision: 33280
Modified:
labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManager.java
labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManagerImpl.java
labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/filter/NukesSyncFilter.java
labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/plugin/spring.xml
Log:
ORG-606: handling synchronization flag with nukes moved to SbsAccountManager
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManager.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManager.java 2010-06-01 10:58:55 UTC (rev 33279)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManager.java 2010-06-01 11:09:03 UTC (rev 33280)
@@ -24,6 +24,7 @@
import org.jboss.labs.sbs.plugin.nukesauth.dao.NukesUser;
import com.jivesoftware.base.EmailAlreadyExistsException;
+import com.jivesoftware.base.User;
import com.jivesoftware.base.UserAlreadyExistsException;
import com.jivesoftware.base.UserNotFoundException;
@@ -55,4 +56,20 @@
*/
public void updatePassword(String username, String password) throws UserNotFoundException;
+ /**
+ * Check if account is synchronized
+ *
+ * @param user
+ * @return true if account is synchronized, otherwise false
+ */
+ public boolean isAccountSynchronized(User user);
+
+ /**
+ * Set Nukes Synchronized flag
+ *
+ * @param user
+ * @param setSynchronized true or false
+ */
+ public void setAccountSynchronized(User user, boolean setSynchronized);
+
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManagerImpl.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManagerImpl.java 2010-06-01 10:58:55 UTC (rev 33279)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/SbsAccountManagerImpl.java 2010-06-01 11:09:03 UTC (rev 33280)
@@ -56,6 +56,8 @@
private ProfileManager profileManager;
+ private Long accountSynchronizedFiled = new Long(5010);
+
private UserTemplate mapDetails(UserTemplate ut, NukesUser nukeUser) {
ut.setFirstName(nukeUser.getFirstName());
ut.setLastName(nukeUser.getLastName());
@@ -140,6 +142,29 @@
}
}
+ @Override
+ public boolean isAccountSynchronized(User user) {
+ Map<Long, ProfileFieldValue> profile = profileManager.getProfile(user);
+ ProfileFieldValue accountSync = profile.get(accountSynchronizedFiled);
+
+ if (accountSync != null && "true".equalsIgnoreCase(accountSync.getValue())) {
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ public void setAccountSynchronized(User user, boolean setSynchronized) {
+ Map<Long, ProfileFieldValue> profile = profileManager.getProfile(user);
+ ProfileFieldValue accountSync = profile.get(accountSynchronizedFiled);
+ if (accountSync == null) {
+ accountSync = new ProfileFieldValue(accountSynchronizedFiled, ProfileField.Type.BOOLEAN.getID());
+ }
+ accountSync.setValue(setSynchronized ? "true" : "false");
+ profile.put(accountSynchronizedFiled, accountSync);
+ profileManager.setProfile(user, profile.values());
+ }
+
public void setUserManager(UserManager userManager) {
this.userManager = userManager;
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/filter/NukesSyncFilter.java
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/filter/NukesSyncFilter.java 2010-06-01 10:58:55 UTC (rev 33279)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/java/org/jboss/labs/sbs/plugin/nukesauth/filter/NukesSyncFilter.java 2010-06-01 11:09:03 UTC (rev 33280)
@@ -23,7 +23,6 @@
import java.io.IOException;
import java.util.List;
-import java.util.Map;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
@@ -43,9 +42,6 @@
import com.jivesoftware.base.UserManager;
import com.jivesoftware.base.UserNotFoundException;
import com.jivesoftware.community.aaa.JiveAuthenticationProcessingFilter;
-import com.jivesoftware.community.user.profile.ProfileField;
-import com.jivesoftware.community.user.profile.ProfileFieldValue;
-import com.jivesoftware.community.user.profile.ProfileManager;
/**
* Filter synchronizes Nukes account with SBS account during login process
@@ -56,16 +52,12 @@
private static final Logger log = LogManager.getLogger(NukesSyncFilter.class);
- private ProfileManager profileManager;
-
private NukesAccountManager nukesAccountManager;
private SbsAccountManager sbsAccountManager;
private UserManager userManager;
- private Long accountSynchronizedFiled = new Long(5010);
-
@Override
public void afterPropertiesSet() throws Exception {
// do nothing - this is only sync filter - it doesn't do login.
@@ -98,7 +90,7 @@
User user = null;
try {
user = userManager.getUser(username);
- if (isAccountSynchronized(user)) {
+ if (sbsAccountManager.isAccountSynchronized(user)) {
log.debug("User is synchronized");
chain.doFilter(request, response);
return;
@@ -133,12 +125,10 @@
List<NukesUser> nukesAccounts = nukesAccountManager.getNukesAccountsByEmail(user.getEmail());
if (nukesAccounts.size() > 1) {
- // TODO: handle one SBS account and more nukes accounts
- // update Nukes duplicate accounts
- } else {
- sbsAccountManager.updatePassword(username, password);
+ // TODO: update Nukes duplicate accounts
}
+ sbsAccountManager.updatePassword(username, password);
} else {
log.debug("SBS account does NOT exist");
NukesUser nukesUser = nukesAccountManager.getAccountByUsername(username);
@@ -160,14 +150,7 @@
if (setSynchronized) {
log.trace("set account synchronized flag to true");
- Map<Long, ProfileFieldValue> profile = profileManager.getProfile(user);
- ProfileFieldValue accountSync = profile.get(accountSynchronizedFiled);
- if (accountSync == null) {
- accountSync = new ProfileFieldValue(accountSynchronizedFiled, ProfileField.Type.BOOLEAN.getID());
- }
- accountSync.setValue("true");
- profile.put(accountSynchronizedFiled, accountSync);
- profileManager.setProfile(user, profile.values());
+ sbsAccountManager.setAccountSynchronized(user, setSynchronized);
log.info("Account is fully synchronized");
} else {
log.fatal("Error occured during synchronization of user: " + username);
@@ -177,20 +160,6 @@
chain.doFilter(request, response);
}
- private boolean isAccountSynchronized(User user) {
- Map<Long, ProfileFieldValue> profile = profileManager.getProfile(user);
- ProfileFieldValue accountSync = profile.get(accountSynchronizedFiled);
-
- if (accountSync != null && "true".equalsIgnoreCase(accountSync.getValue())) {
- return true;
- }
- return false;
- }
-
- public void setProfileManager(ProfileManager profileManager) {
- this.profileManager = profileManager;
- }
-
public void setNukesAccountManager(NukesAccountManager nukesAccountManager) {
this.nukesAccountManager = nukesAccountManager;
}
Modified: labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/plugin/spring.xml
===================================================================
--- labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/plugin/spring.xml 2010-06-01 10:58:55 UTC (rev 33279)
+++ labs/jbosslabs/labs-3.0-build/integration/sbs-nukesauthentication/trunk/src/main/plugin/spring.xml 2010-06-01 11:09:03 UTC (rev 33280)
@@ -15,7 +15,6 @@
<property name="nukesAccountManager" ref="nukesAccountManager" />
<property name="sbsAccountManager" ref="sbsAccountManager" />
<property name="userManager" ref="userManager" />
- <property name="profileManager" ref="profileManagerImpl" />
<property name="filterProcessesUrl">
<value>/cs_login</value> <!-- Must be exactly same like in formAuthenticationFilter -->
</property>
More information about the jboss-svn-commits
mailing list