You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ol...@apache.org on 2013/12/16 02:26:27 UTC

svn commit: r1551098 - in /archiva/redback/redback-core/trunk: redback-common/redback-common-ldap/src/test/java/org/apache/archiva/redback/common/ldap/user/ redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redbac...

Author: olamy
Date: Mon Dec 16 01:26:26 2013
New Revision: 1551098

URL: http://svn.apache.org/r1551098
Log:
add a method to find user without using caching: jdo update need the object detach from database not a cached one

Modified:
    archiva/redback/redback-core/trunk/redback-common/redback-common-ldap/src/test/java/org/apache/archiva/redback/common/ldap/user/MockUserManager.java
    archiva/redback/redback-core/trunk/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultPasswordService.java
    archiva/redback/redback-core/trunk/redback-system/src/test/java/org/apache/archiva/redback/system/MockUserManager.java
    archiva/redback/redback-core/trunk/redback-users/redback-users-api/src/main/java/org/apache/archiva/redback/users/UserManager.java
    archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-cached/src/main/java/org/apache/archiva/redback/users/cached/CachedUserManager.java
    archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-configurable/src/main/java/org/apache/archiva/redback/users/configurable/ConfigurableUserManager.java
    archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-jdo/src/main/java/org/apache/archiva/redback/users/jdo/JdoUserManager.java
    archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-ldap/src/main/java/org/apache/archiva/redback/users/ldap/LdapUserManager.java
    archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-memory/src/main/java/org/apache/archiva/redback/users/memory/MemoryUserManager.java

Modified: archiva/redback/redback-core/trunk/redback-common/redback-common-ldap/src/test/java/org/apache/archiva/redback/common/ldap/user/MockUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-common/redback-common-ldap/src/test/java/org/apache/archiva/redback/common/ldap/user/MockUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-common/redback-common-ldap/src/test/java/org/apache/archiva/redback/common/ldap/user/MockUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-common/redback-common-ldap/src/test/java/org/apache/archiva/redback/common/ldap/user/MockUserManager.java Mon Dec 16 01:26:26 2013
@@ -102,6 +102,13 @@ public class MockUserManager
         return null;  //To change body of implemented methods use File | Settings | File Templates.
     }
 
+    @Override
+    public User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException
+    {
+        return null;
+    }
+
     public User getGuestUser()
         throws UserNotFoundException, UserManagerException
     {

Modified: archiva/redback/redback-core/trunk/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultPasswordService.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultPasswordService.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultPasswordService.java (original)
+++ archiva/redback/redback-core/trunk/redback-integrations/redback-rest/redback-rest-services/src/main/java/org/apache/archiva/redback/rest/services/DefaultPasswordService.java Mon Dec 16 01:26:26 2013
@@ -107,7 +107,7 @@ public class DefaultPasswordService
 
             String encodedPassword = passwordValidator.validatePassword( password, principal );
 
-            User user = securitySystem.getUserManager().findUser( principal );
+            User user = securitySystem.getUserManager().findUser( principal, false );
             user.setPassword( password );
             user.setEncodedPassword( encodedPassword );
             user = securitySystem.getUserManager().updateUser( user );

Modified: archiva/redback/redback-core/trunk/redback-system/src/test/java/org/apache/archiva/redback/system/MockUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-system/src/test/java/org/apache/archiva/redback/system/MockUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-system/src/test/java/org/apache/archiva/redback/system/MockUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-system/src/test/java/org/apache/archiva/redback/system/MockUserManager.java Mon Dec 16 01:26:26 2013
@@ -100,6 +100,13 @@ public class MockUserManager
         return null;  //To change body of implemented methods use File | Settings | File Templates.
     }
 
+    @Override
+    public User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException
+    {
+        return null;
+    }
+
     public User getGuestUser()
         throws UserNotFoundException, UserManagerException
     {

Modified: archiva/redback/redback-core/trunk/redback-users/redback-users-api/src/main/java/org/apache/archiva/redback/users/UserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-users/redback-users-api/src/main/java/org/apache/archiva/redback/users/UserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-users/redback-users-api/src/main/java/org/apache/archiva/redback/users/UserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-users/redback-users-api/src/main/java/org/apache/archiva/redback/users/UserManager.java Mon Dec 16 01:26:26 2013
@@ -136,6 +136,9 @@ public interface UserManager
     User findUser( String username )
         throws UserNotFoundException, UserManagerException;
 
+    User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException;
+
     /**
      * Get the guest user.
      *

Modified: archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-cached/src/main/java/org/apache/archiva/redback/users/cached/CachedUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-cached/src/main/java/org/apache/archiva/redback/users/cached/CachedUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-cached/src/main/java/org/apache/archiva/redback/users/cached/CachedUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-cached/src/main/java/org/apache/archiva/redback/users/cached/CachedUserManager.java Mon Dec 16 01:26:26 2013
@@ -137,6 +137,14 @@ public class CachedUserManager
         }
     }
 
+    @Override
+    public User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException
+    {
+        // force use of cache here :-)
+        return findUser( username );
+    }
+
     public User getGuestUser()
         throws UserNotFoundException, UserManagerException
     {

Modified: archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-configurable/src/main/java/org/apache/archiva/redback/users/configurable/ConfigurableUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-configurable/src/main/java/org/apache/archiva/redback/users/configurable/ConfigurableUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-configurable/src/main/java/org/apache/archiva/redback/users/configurable/ConfigurableUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-configurable/src/main/java/org/apache/archiva/redback/users/configurable/ConfigurableUserManager.java Mon Dec 16 01:26:26 2013
@@ -107,6 +107,13 @@ public class ConfigurableUserManager
     }
 
     @Override
+    public User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException
+    {
+        return userManagerImpl.findUser( username, useCache );
+    }
+
+    @Override
     public User getGuestUser()
         throws UserNotFoundException, UserManagerException
     {

Modified: archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-jdo/src/main/java/org/apache/archiva/redback/users/jdo/JdoUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-jdo/src/main/java/org/apache/archiva/redback/users/jdo/JdoUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-jdo/src/main/java/org/apache/archiva/redback/users/jdo/JdoUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-jdo/src/main/java/org/apache/archiva/redback/users/jdo/JdoUserManager.java Mon Dec 16 01:26:26 2013
@@ -300,6 +300,13 @@ public class JdoUserManager
         return (User) getObjectById( username, null );
     }
 
+    @Override
+    public User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException
+    {
+        return findUser( username );
+    }
+
     public boolean userExists( String principal )
         throws UserManagerException
     {

Modified: archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-ldap/src/main/java/org/apache/archiva/redback/users/ldap/LdapUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-ldap/src/main/java/org/apache/archiva/redback/users/ldap/LdapUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-ldap/src/main/java/org/apache/archiva/redback/users/ldap/LdapUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-ldap/src/main/java/org/apache/archiva/redback/users/ldap/LdapUserManager.java Mon Dec 16 01:26:26 2013
@@ -51,24 +51,24 @@ import java.util.List;
 /**
  * @author <a href="jesse@codehaus.org"> jesse
  */
-@Service( "userManager#ldap" )
+@Service("userManager#ldap")
 public class LdapUserManager
     extends AbstractUserManager
     implements UserManager
 {
     @Inject
-    @Named( value = "ldapConnectionFactory#configurable" )
+    @Named(value = "ldapConnectionFactory#configurable")
     private LdapConnectionFactory connectionFactory;
 
     @Inject
     private LdapController controller;
 
     @Inject
-    @Named( value = "userMapper#ldap" )
+    @Named(value = "userMapper#ldap")
     private UserMapper mapper;
 
     @Inject
-    @Named( value = "userConfiguration#default" )
+    @Named(value = "userConfiguration#default")
     private UserConfiguration userConf;
 
     @Inject
@@ -195,7 +195,8 @@ public class LdapUserManager
         // TODO Implement erase!
     }
 
-    public User findUser( String username )
+    @Override
+    public User findUser( String username, boolean useCache )
         throws UserNotFoundException, UserManagerException
     {
         if ( username == null )
@@ -203,15 +204,17 @@ public class LdapUserManager
             throw new UserNotFoundException( "Unable to find user based on null username." );
         }
 
-        // REDBACK-289/MRM-1488
-        // look for the user in the cache first
-        LdapUser ldapUser = ldapCacheService.getUser( username );
-        if ( ldapUser != null )
+        if ( useCache )
         {
-            log.debug( "User {} found in cache.", username );
-            return ldapUser;
+            // REDBACK-289/MRM-1488
+            // look for the user in the cache first
+            LdapUser ldapUser = ldapCacheService.getUser( username );
+            if ( ldapUser != null )
+            {
+                log.debug( "User {} found in cache.", username );
+                return ldapUser;
+            }
         }
-
         LdapConnection ldapConnection = null;
 
         try
@@ -251,6 +254,12 @@ public class LdapUserManager
         }
     }
 
+    public User findUser( String username )
+        throws UserNotFoundException, UserManagerException
+    {
+        return findUser( username, true );
+    }
+
     public List<User> findUsersByEmailKey( String emailKey, boolean orderAscending )
         throws UserManagerException
     {

Modified: archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-memory/src/main/java/org/apache/archiva/redback/users/memory/MemoryUserManager.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-memory/src/main/java/org/apache/archiva/redback/users/memory/MemoryUserManager.java?rev=1551098&r1=1551097&r2=1551098&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-memory/src/main/java/org/apache/archiva/redback/users/memory/MemoryUserManager.java (original)
+++ archiva/redback/redback-core/trunk/redback-users/redback-users-providers/redback-users-memory/src/main/java/org/apache/archiva/redback/users/memory/MemoryUserManager.java Mon Dec 16 01:26:26 2013
@@ -212,6 +212,13 @@ public class MemoryUserManager
         return user;
     }
 
+    @Override
+    public User findUser( String username, boolean useCache )
+        throws UserNotFoundException, UserManagerException
+    {
+        return findUser( username );
+    }
+
     public List<User> findUsersByUsernameKey( String usernameKey, boolean orderAscending )
     {
         triggerInit();