Author: carlos
Date: Tue Aug 22 18:14:39 2006
New Revision: 433824

URL: http://svn.apache.org/viewvc?rev=433824&view=rev
Log:
Handle guest user passwords

Modified:
    
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java
    
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/MustHavePasswordRule.java

Modified: 
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java?rev=433824&r1=433823&r2=433824&view=diff
==============================================================================
--- 
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java
 (original)
+++ 
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/DefaultUserManager.java
 Tue Aug 22 18:14:39 2006
@@ -123,7 +123,15 @@
     {
         validatePassword( user );
         
-        user.setEncodedPassword( this.passwordEncoder.encodePassword( 
user.getPassword(), salt ) );
+        if ( user.isGuest() )
+        {
+            //TODO we shouldn't allow password changes for guest users, throw 
exception before getting here
+            user.setEncodedPassword( null );
+        }
+        else
+        {
+            user.setEncodedPassword( this.passwordEncoder.encodePassword( 
user.getPassword(), salt ) );
+        }
         user.setPassword( null );
         
         user.setLastPasswordChange( new Date() ); // update timestamp to now.

Modified: 
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/MustHavePasswordRule.java
URL: 
http://svn.apache.org/viewvc/maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/MustHavePasswordRule.java?rev=433824&r1=433823&r2=433824&view=diff
==============================================================================
--- 
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/MustHavePasswordRule.java
 (original)
+++ 
maven/shared/trunk/maven-user/maven-user-model/src/main/java/org/apache/maven/user/model/impl/MustHavePasswordRule.java
 Tue Aug 22 18:14:39 2006
@@ -22,7 +22,7 @@
 import org.codehaus.plexus.util.StringUtils;
 
 /**
- * Basic Password Rule, Checks for non-empty Passwords.
+ * Basic Password Rule, Checks for non-empty Passwords in non guest users.
  * 
  * @plexus.component role="org.apache.maven.user.model.PasswordRule" 
role-hint="must-have"
  * 
@@ -33,14 +33,26 @@
     implements PasswordRule
 {
 
+    /**
+     * 
+     * @param user
+     * @return true if the password is not null or empty string, or if the 
user is guest
+     */
     public boolean isValidPassword( User user )
     {
-        return !StringUtils.isEmpty( user.getPassword() );
+        if ( user.isGuest() )
+        {
+            return true;
+        }
+        else
+        {
+            return !StringUtils.isEmpty( user.getPassword() );
+        }
     }
 
     public void testPassword( PasswordRuleViolations violations, User user )
     {
-        if ( StringUtils.isEmpty( user.getPassword() ) )
+        if ( !user.isGuest() && StringUtils.isEmpty( user.getPassword() ) )
         {
             violations.addViolation( "user.password.violation.missing" ); 
//$NON-NLS-1$
         }


Reply via email to