diff --git a/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo b/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo
index 31c57cd65..49a858bc2 100644
--- a/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo
+++ b/archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo
@@ -1571,6 +1571,12 @@
1.4.0+
String
+
+ baseGroupsDn
+ The LDAP base dn for groups (if empty baseDn is used).
+ 1.4.0+
+ String
+
contextFactory
contextFactory to use.
diff --git a/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-api/src/main/java/org/apache/archiva/admin/model/beans/LdapConfiguration.java b/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-api/src/main/java/org/apache/archiva/admin/model/beans/LdapConfiguration.java
index f41c7dfb9..eba93395d 100644
--- a/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-api/src/main/java/org/apache/archiva/admin/model/beans/LdapConfiguration.java
+++ b/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-api/src/main/java/org/apache/archiva/admin/model/beans/LdapConfiguration.java
@@ -65,6 +65,11 @@ public class LdapConfiguration
*/
private String bindDn;
+ /**
+ * The LDAP base dn for groups (if empty baseDn is used).
+ */
+ private String baseGroupsDn;
+
/**
* The LDAP password.
*/
@@ -216,4 +221,14 @@ public class LdapConfiguration
}
}
}
+
+ public String getBaseGroupsDn()
+ {
+ return baseGroupsDn;
+ }
+
+ public void setBaseGroupsDn( String baseGroupsDn )
+ {
+ this.baseGroupsDn = baseGroupsDn;
+ }
}
diff --git a/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/src/main/java/org/apache/archiva/admin/repository/runtime/DefaultRedbackRuntimeConfigurationAdmin.java b/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/src/main/java/org/apache/archiva/admin/repository/runtime/DefaultRedbackRuntimeConfigurationAdmin.java
index 36116b0dd..ebb117e06 100644
--- a/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/src/main/java/org/apache/archiva/admin/repository/runtime/DefaultRedbackRuntimeConfigurationAdmin.java
+++ b/archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-default/src/main/java/org/apache/archiva/admin/repository/runtime/DefaultRedbackRuntimeConfigurationAdmin.java
@@ -49,7 +49,7 @@ import java.util.Set;
* @author Olivier Lamy
* @since 1.4-M4
*/
-@Service( "userConfiguration#archiva" )
+@Service("userConfiguration#archiva")
public class DefaultRedbackRuntimeConfigurationAdmin
implements RedbackRuntimeConfigurationAdmin, UserConfiguration
{
@@ -60,11 +60,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
@@ -118,6 +118,11 @@ public class DefaultRedbackRuntimeConfigurationAdmin
ldapConfiguration.setSsl( userConfiguration.getBoolean( UserConfigurationKeys.LDAP_SSL, false ) );
ldapConfiguration.setBaseDn(
userConfiguration.getConcatenatedList( UserConfigurationKeys.LDAP_BASEDN, null ) );
+
+ ldapConfiguration.setBaseGroupsDn(
+ userConfiguration.getConcatenatedList( UserConfigurationKeys.LDAP_GROUPS_BASEDN,
+ ldapConfiguration.getBaseDn() ) );
+
ldapConfiguration.setContextFactory(
userConfiguration.getString( UserConfigurationKeys.LDAP_CONTEX_FACTORY, null ) );
ldapConfiguration.setBindDn(
@@ -520,6 +525,10 @@ public class DefaultRedbackRuntimeConfigurationAdmin
{
return getRedbackRuntimeConfiguration().getLdapConfiguration().getBindDn();
}
+ if ( UserConfigurationKeys.LDAP_GROUPS_BASEDN.equals( key ) )
+ {
+ return getRedbackRuntimeConfiguration().getLdapConfiguration().getBaseGroupsDn();
+ }
return userConfiguration.getConcatenatedList( key, defaultValue );
}
diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSystemStatusService.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSystemStatusService.java
index 80bf050d3..6c7558e67 100644
--- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSystemStatusService.java
+++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSystemStatusService.java
@@ -35,6 +35,7 @@ import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Service;
import javax.inject.Inject;
+import javax.inject.Named;
import javax.ws.rs.core.Response;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
@@ -63,6 +64,9 @@ public class DefaultSystemStatusService
private RepositoryScanner scanner;
+ // display spring scheduled
+ //@Inject @Named (value="springScheduler");
+
@Inject
public DefaultSystemStatusService( ApplicationContext applicationContext, RepositoryScanner scanner )