]> source.dussan.org Git - archiva.git/commitdiff
support more than one value for user manager impls from security.properties
authorOlivier Lamy <olamy@apache.org>
Sat, 5 Jan 2013 17:57:45 +0000 (17:57 +0000)
committerOlivier Lamy <olamy@apache.org>
Sat, 5 Jan 2013 17:57:45 +0000 (17:57 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1429339 13f79535-47bb-0310-9956-ffa450edef68

archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/src/main/java/org/apache/archiva/admin/repository/runtime/DefaultRedbackRuntimeConfigurationAdmin.java

index 3c12a2e84fc2e8dbfe9a8511e023c1b02e197739..a4fea1b361dfb05018beef200cb2a8d47104e5ca 100644 (file)
@@ -46,7 +46,7 @@ import java.util.List;
  * @author Olivier Lamy
  * @since 1.4-M4
  */
-@Service( "userConfiguration#archiva" )
+@Service("userConfiguration#archiva")
 public class DefaultRedbackRuntimeConfigurationAdmin
     implements RedbackRuntimeConfigurationAdmin, UserConfiguration
 {
@@ -57,11 +57,11 @@ public class DefaultRedbackRuntimeConfigurationAdmin
     private ArchivaConfiguration archivaConfiguration;
 
     @Inject
-    @Named( value = "userConfiguration#redback" )
+    @Named(value = "userConfiguration#redback")
     UserConfiguration userConfiguration;
 
     @Inject
-    @Named( value = "cache#users" )
+    @Named(value = "cache#users")
     private Cache usersCache;
 
     @PostConstruct
@@ -78,7 +78,18 @@ public class DefaultRedbackRuntimeConfigurationAdmin
                 String userManagerImpl = userConfiguration.getString( UserConfigurationKeys.USER_MANAGER_IMPL );
                 if ( StringUtils.isNotEmpty( userManagerImpl ) )
                 {
-                    redbackRuntimeConfiguration.getUserManagerImpls().add( userManagerImpl );
+                    if ( StringUtils.contains( userManagerImpl, ',' ) )
+                    {
+                        String[] impls = StringUtils.split( userManagerImpl, ',' );
+                        for ( String impl : impls )
+                        {
+                            redbackRuntimeConfiguration.getUserManagerImpls().add( impl );
+                        }
+                    }
+                    else
+                    {
+                        redbackRuntimeConfiguration.getUserManagerImpls().add( userManagerImpl );
+                    }
                 }
 
                 // now ldap