]> source.dussan.org Git - archiva.git/commitdiff
[MRM-1504] Add a new module for repository administration management : remove some...
authorOlivier Lamy <olamy@apache.org>
Tue, 13 Sep 2011 13:22:36 +0000 (13:22 +0000)
committerOlivier Lamy <olamy@apache.org>
Tue, 13 Sep 2011 13:22:36 +0000 (13:22 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1170171 13f79535-47bb-0310-9956-ffa450edef68

16 files changed:
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/DeleteArtifactAction.java
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AbstractRepositoriesAdminAction.java
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryAction.java
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/AddRemoteRepositoryAction.java
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryAction.java
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/RepositoriesAction.java
archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/repositories/SortRepositoriesAction.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/DeleteArtifactActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddManagedRepositoryActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/AddRemoteRepositoryActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/DeleteManagedRepositoryActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/DeleteRemoteRepositoryActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/DeleteRepositoryGroupActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditManagedRepositoryActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/EditRemoteRepositoryActionTest.java
archiva-modules/archiva-web/archiva-webapp/src/test/java/org/apache/maven/archiva/web/action/admin/repositories/RepositoryGroupsActionTest.java

index 431075ccbca1f25605e0aa46a5e5354fde47e80e..4ed4f50bda85aed038f76f1dcc23a558047849a3 100644 (file)
@@ -21,6 +21,9 @@ package org.apache.maven.archiva.web.action;
 
 import com.opensymphony.xwork2.Preparable;
 import com.opensymphony.xwork2.Validateable;
+import org.apache.archiva.admin.model.RepositoryAdminException;
+import org.apache.archiva.admin.model.managed.ManagedRepository;
+import org.apache.archiva.admin.model.managed.ManagedRepositoryAdmin;
 import org.apache.archiva.audit.AuditEvent;
 import org.apache.archiva.audit.Auditable;
 import org.apache.archiva.checksum.ChecksumAlgorithm;
@@ -31,11 +34,13 @@ import org.apache.archiva.metadata.repository.MetadataRepositoryException;
 import org.apache.archiva.metadata.repository.MetadataResolutionException;
 import org.apache.archiva.metadata.repository.RepositorySession;
 import org.apache.archiva.repository.events.RepositoryListener;
+import org.apache.archiva.security.AccessDeniedException;
+import org.apache.archiva.security.ArchivaSecurityException;
+import org.apache.archiva.security.PrincipalNotFoundException;
+import org.apache.archiva.security.UserRepositories;
 import org.apache.commons.lang.StringUtils;
 import org.apache.maven.archiva.common.utils.VersionComparator;
 import org.apache.maven.archiva.common.utils.VersionUtil;
-import org.apache.maven.archiva.configuration.ArchivaConfiguration;
-import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
 import org.apache.maven.archiva.model.ArchivaRepositoryMetadata;
 import org.apache.maven.archiva.model.VersionedReference;
 import org.apache.maven.archiva.repository.ContentNotFoundException;
@@ -47,10 +52,6 @@ import org.apache.maven.archiva.repository.metadata.MetadataTools;
 import org.apache.maven.archiva.repository.metadata.RepositoryMetadataException;
 import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader;
 import org.apache.maven.archiva.repository.metadata.RepositoryMetadataWriter;
-import org.apache.archiva.security.AccessDeniedException;
-import org.apache.archiva.security.ArchivaSecurityException;
-import org.apache.archiva.security.PrincipalNotFoundException;
-import org.apache.archiva.security.UserRepositories;
 import org.springframework.context.annotation.Scope;
 import org.springframework.stereotype.Controller;
 
@@ -104,15 +105,15 @@ public class DeleteArtifactAction
     @Inject
     private UserRepositories userRepositories;
 
-    @Inject
-    private ArchivaConfiguration configuration;
-
     @Inject
     private RepositoryContentFactory repositoryFactory;
 
     @Inject
     private List<RepositoryListener> listeners;
 
+    @Inject
+    private ManagedRepositoryAdmin managedRepositoryAdmin;
+
     private ChecksumAlgorithm[] algorithms = new ChecksumAlgorithm[]{ ChecksumAlgorithm.SHA1, ChecksumAlgorithm.MD5 };
 
     @PostConstruct
@@ -193,22 +194,21 @@ public class DeleteArtifactAction
 
     public String doDelete()
     {
-        Date lastUpdatedTimestamp = Calendar.getInstance().getTime();
-
-        TimeZone timezone = TimeZone.getTimeZone( "UTC" );
-        DateFormat fmt = new SimpleDateFormat( "yyyyMMdd.HHmmss" );
-        fmt.setTimeZone( timezone );
-        ManagedRepositoryConfiguration repoConfig =
-            configuration.getConfiguration().findManagedRepositoryById( repositoryId );
-
-        VersionedReference ref = new VersionedReference();
-        ref.setArtifactId( artifactId );
-        ref.setGroupId( groupId );
-        ref.setVersion( version );
 
         RepositorySession repositorySession = repositorySessionFactory.createSession();
         try
         {
+            Date lastUpdatedTimestamp = Calendar.getInstance().getTime();
+
+            TimeZone timezone = TimeZone.getTimeZone( "UTC" );
+            DateFormat fmt = new SimpleDateFormat( "yyyyMMdd.HHmmss" );
+            fmt.setTimeZone( timezone );
+            ManagedRepository repoConfig = getManagedRepositoryAdmin().getManagedRepository( repositoryId );
+
+            VersionedReference ref = new VersionedReference();
+            ref.setArtifactId( artifactId );
+            ref.setGroupId( groupId );
+            ref.setVersion( version );
             ManagedRepositoryContent repository = repositoryFactory.getManagedRepositoryContent( repositoryId );
 
             String path = repository.toMetadataPath( ref );
@@ -280,6 +280,11 @@ public class DeleteArtifactAction
             addActionError( "Repository exception: " + e.getMessage() );
             return ERROR;
         }
+        catch ( RepositoryAdminException e )
+        {
+            addActionError( "RepositoryAdmin exception: " + e.getMessage() );
+            return ERROR;
+        }
         finally
         {
             repositorySession.close();
@@ -453,8 +458,13 @@ public class DeleteArtifactAction
         this.repositoryFactory = repositoryFactory;
     }
 
-    public void setConfiguration( ArchivaConfiguration configuration )
+    public ManagedRepositoryAdmin getManagedRepositoryAdmin()
+    {
+        return managedRepositoryAdmin;
+    }
+
+    public void setManagedRepositoryAdmin( ManagedRepositoryAdmin managedRepositoryAdmin )
     {
-        this.configuration = configuration;
+        this.managedRepositoryAdmin = managedRepositoryAdmin;
     }
 }
index e2bc9f43bde02d6346bf8ce3a4e0191b3e9a6ac5..4de336c0242379b0289736952fdea6a4f407a756 100644 (file)
@@ -50,19 +50,12 @@ public abstract class AbstractRepositoriesAdminAction
     implements SecureAction, Auditable
 {
 
-    @Inject
-    protected ArchivaConfiguration archivaConfiguration;
-
     @Inject
     private ManagedRepositoryAdmin managedRepositoryAdmin;
 
     @Inject
     private RepositoryCommonValidator repositoryCommonValidator;
 
-    public ArchivaConfiguration getArchivaConfiguration()
-    {
-        return archivaConfiguration;
-    }
 
     public SecureActionBundle getSecureActionBundle()
         throws SecureActionException
@@ -75,40 +68,7 @@ public abstract class AbstractRepositoriesAdminAction
         return bundle;
     }
 
-    public void setArchivaConfiguration( ArchivaConfiguration archivaConfiguration )
-    {
-        this.archivaConfiguration = archivaConfiguration;
-    }
 
-    /**
-     * Save the configuration.
-     *
-     * @param configuration the configuration to save.
-     * @return the webwork result code to issue.
-     * @throws IOException                   thrown if unable to save file to disk.
-     * @throws InvalidConfigurationException thrown if configuration is invalid.
-     * @throws RegistryException             thrown if configuration subsystem has a problem saving the configuration to disk.
-     */
-    protected String saveConfiguration( Configuration configuration )
-    {
-        try
-        {
-            archivaConfiguration.save( configuration );
-            addActionMessage( "Successfully saved configuration" );
-        }
-        catch ( IndeterminateConfigurationException e )
-        {
-            addActionError( e.getMessage() );
-            return INPUT;
-        }
-        catch ( RegistryException e )
-        {
-            addActionError( "Configuration Registry Exception: " + e.getMessage() );
-            return INPUT;
-        }
-
-        return SUCCESS;
-    }
 
     public ManagedRepositoryAdmin getManagedRepositoryAdmin()
     {
index 24e9714f032bad8f4025d7a1348c2b7da64d2cbc..dfb1aa39a5dc2363be726ef58e3c6118be5aa0aa 100644 (file)
@@ -24,8 +24,6 @@ import com.opensymphony.xwork2.Validateable;
 import org.apache.archiva.admin.model.RepositoryAdminException;
 import org.apache.archiva.admin.model.managed.ManagedRepository;
 import org.apache.commons.lang.StringUtils;
-import org.apache.maven.archiva.configuration.Configuration;
-import org.codehaus.redback.components.scheduler.CronExpressionValidator;
 import org.springframework.context.annotation.Scope;
 import org.springframework.stereotype.Controller;
 
@@ -101,41 +99,9 @@ public class AddManagedRepositoryAction
         return result;
     }
 
-    // FIXME olamy dupe with admin repo component
     @Override
     public void validate()
     {
-        Configuration config = archivaConfiguration.getConfiguration();
-
-        CronExpressionValidator validator = new CronExpressionValidator();
-        String repoId = repository.getId();
-
-        if ( config.getManagedRepositoriesAsMap().containsKey( repoId ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], that id already exists as a managed repository." );
-        }
-        else if ( config.getRemoteRepositoriesAsMap().containsKey( repoId ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], that id already exists as a remote repository." );
-        }
-        else if ( config.getRepositoryGroupsAsMap().containsKey( repoId ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], that id already exists as a repository group." );
-        }
-        else if ( repoId.toLowerCase().contains( "stage" ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], repository id cannot contains word stage" );
-        }
-
-        if ( !validator.validate( repository.getCronExpression() ) )
-        {
-            addFieldError( "repository.refreshCronExpression", "Invalid cron expression." );
-        }
-
         // trim all unecessary trailing/leading white-spaces; always put this statement before the closing braces(after all validation).
         trimAllRequestParameterValues();
     }
index 4261dc02886989f799d66c257a700f2dc46de968..8561bb1af0aa7351789c0602ff1c2cef1602d9ea 100644 (file)
@@ -23,7 +23,6 @@ import com.opensymphony.xwork2.Preparable;
 import com.opensymphony.xwork2.Validateable;
 import org.apache.archiva.admin.model.RepositoryAdminException;
 import org.apache.archiva.admin.model.remote.RemoteRepository;
-import org.apache.maven.archiva.configuration.Configuration;
 import org.springframework.context.annotation.Scope;
 import org.springframework.stereotype.Controller;
 
@@ -70,30 +69,6 @@ public class AddRemoteRepositoryAction
         return result;
     }
 
-    // FIXME olamy dupe with admin repo component
-    @Override
-    public void validate()
-    {
-        Configuration config = archivaConfiguration.getConfiguration();
-
-        String repoId = repository.getId();
-
-        if ( config.getManagedRepositoriesAsMap().containsKey( repoId ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], that id already exists as a managed repository." );
-        }
-        else if ( config.getRemoteRepositoriesAsMap().containsKey( repoId ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], that id already exists as a remote repository." );
-        }
-        else if ( config.getRepositoryGroupsAsMap().containsKey( repoId ) )
-        {
-            addFieldError( "repository.id", "Unable to add new repository with id [" + repoId
-                + "], that id already exists as a repository group." );
-        }
-    }
 
     public RemoteRepository getRepository()
     {
index 14732f956cf9bcbdbbfa28dc666986054ca57179..6a76ba21c4097ae1cf452ee23410c350d4e9cb36 100644 (file)
@@ -24,7 +24,6 @@ import com.opensymphony.xwork2.Validateable;
 import org.apache.archiva.admin.model.RepositoryAdminException;
 import org.apache.archiva.admin.model.managed.ManagedRepository;
 import org.apache.commons.lang.StringUtils;
-import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
 import org.codehaus.redback.components.scheduler.CronExpressionValidator;
 import org.springframework.context.annotation.Scope;
 import org.springframework.stereotype.Controller;
@@ -87,11 +86,10 @@ public class EditManagedRepositoryAction
         return save( true );
     }
 
-    // FIXME olamy use ManagedRepositoryAdmin rather tha, directly archivaConfiguration
     public String commit()
+        throws RepositoryAdminException
     {
-        ManagedRepositoryConfiguration existingConfig =
-            archivaConfiguration.getConfiguration().findManagedRepositoryById( repository.getId() );
+        ManagedRepository existingConfig = getManagedRepositoryAdmin().getManagedRepository( repository.getId() );
         boolean resetStats = false;
 
         // check if the location was changed
index a8af45def177f8f0b48714365238b885b9222577..359e69d761e1911c1f053d8e4df24e1bce85f2cc 100644 (file)
@@ -34,7 +34,6 @@ import org.apache.archiva.metadata.repository.stats.RepositoryStatistics;
 import org.apache.archiva.metadata.repository.stats.RepositoryStatisticsManager;
 import org.apache.archiva.security.common.ArchivaRoleConstants;
 import org.apache.archiva.web.util.ContextUtils;
-import org.apache.maven.archiva.configuration.ArchivaConfiguration;
 import org.apache.maven.archiva.web.action.AbstractActionSupport;
 import org.apache.struts2.interceptor.ServletRequestAware;
 import org.codehaus.plexus.redback.rbac.Resource;
index 1b15394d6a6c9c6adeb548820d79f94084c10450..bc0589711d25efa17860187cff7ac94dd11e59a9 100644 (file)
@@ -20,11 +20,15 @@ package org.apache.maven.archiva.web.action.admin.repositories;
  */
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.maven.archiva.configuration.ArchivaConfiguration;
 import org.apache.maven.archiva.configuration.Configuration;
+import org.apache.maven.archiva.configuration.IndeterminateConfigurationException;
 import org.apache.maven.archiva.configuration.RepositoryGroupConfiguration;
+import org.codehaus.plexus.registry.RegistryException;
 import org.springframework.context.annotation.Scope;
 import org.springframework.stereotype.Controller;
 
+import javax.inject.Inject;
 import java.util.List;
 
 /**
@@ -41,6 +45,9 @@ public class SortRepositoriesAction
 
     private String targetRepo;
 
+    @Inject
+    protected ArchivaConfiguration archivaConfiguration;
+
     public String sortDown()
     {
         Configuration config = archivaConfiguration.getConfiguration();
@@ -75,6 +82,36 @@ public class SortRepositoriesAction
         return saveConfiguration( config );
     }
 
+/**
+     * Save the configuration.
+     *
+     * @param configuration the configuration to save.
+     * @return the webwork result code to issue.
+     * @throws java.io.IOException                   thrown if unable to save file to disk.
+     * @throws org.apache.maven.archiva.configuration.InvalidConfigurationException thrown if configuration is invalid.
+     * @throws org.codehaus.plexus.registry.RegistryException             thrown if configuration subsystem has a problem saving the configuration to disk.
+     */
+    protected String saveConfiguration( Configuration configuration )
+    {
+        try
+        {
+            archivaConfiguration.save( configuration );
+            addActionMessage( "Successfully saved configuration" );
+        }
+        catch ( IndeterminateConfigurationException e )
+        {
+            addActionError( e.getMessage() );
+            return INPUT;
+        }
+        catch ( RegistryException e )
+        {
+            addActionError( "Configuration Registry Exception: " + e.getMessage() );
+            return INPUT;
+        }
+
+        return SUCCESS;
+    }
+
     public String getRepoGroupId()
     {
         return repoGroupId;
@@ -121,4 +158,14 @@ public class SortRepositoriesAction
     {
         return ( idx >= 0 ) && ( idx < repositories.size() );
     }
+
+    public ArchivaConfiguration getArchivaConfiguration()
+    {
+        return archivaConfiguration;
+    }
+
+    public void setArchivaConfiguration( ArchivaConfiguration archivaConfiguration )
+    {
+        this.archivaConfiguration = archivaConfiguration;
+    }
 }
index c13829d580adc4c58f7e4064b632d68434f2414f..ad5db8f781badcb8808c3fd2c184bfe4a1ed9bf2 100644 (file)
@@ -21,6 +21,7 @@ package org.apache.maven.archiva.web.action;
 
 import net.sf.beanlib.provider.replicator.BeanReplicator;
 import org.apache.archiva.admin.model.managed.ManagedRepository;
+import org.apache.archiva.admin.repository.managed.DefaultManagedRepositoryAdmin;
 import org.apache.archiva.metadata.model.ArtifactMetadata;
 import org.apache.archiva.metadata.repository.MetadataRepository;
 import org.apache.archiva.metadata.repository.RepositorySession;
@@ -102,7 +103,7 @@ public class DeleteArtifactActionTest
 
         repositorySessionFactory.setRepositorySession( repositorySession );
 
-        action.setConfiguration( configuration );
+        (( DefaultManagedRepositoryAdmin)action.getManagedRepositoryAdmin()).setArchivaConfiguration( configuration );
         action.setRepositoryFactory( repositoryFactory );
     }
 
index e3bab24e65de857ee82a6cec76f46803a192b736..d67b037e99145f000669575ade07298c79a1ac74 100644 (file)
@@ -81,7 +81,6 @@ public class AddManagedRepositoryActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
 
         roleManagerControl = MockControl.createControl( RoleManager.class );
         roleManager = (RoleManager) roleManagerControl.getMock();
index adf74c7f968787250791e650b426103b662d0568..c2880a0d52653594d5a5dbb4e75aaf67380fe5f3 100644 (file)
@@ -56,7 +56,7 @@ public class AddRemoteRepositoryActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
+
         ( (DefaultRemoteRepositoryAdmin) action.getRemoteRepositoryAdmin() ).setArchivaConfiguration(
             archivaConfiguration );
     }
index 8a9dfdd7b9b74ea6bba5d86d4fc77274940c5861..a480e4770a15dca03e120f0a4345b241257aa331 100644 (file)
@@ -99,7 +99,6 @@ public class DeleteManagedRepositoryActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
 
         roleManagerControl = MockControl.createControl( RoleManager.class );
         roleManager = (RoleManager) roleManagerControl.getMock();
index 8493e47eec5c2ddf9c9996a53044a9866c0db146..e714107f836101afc0ee70e3169e896f14c28120 100644 (file)
@@ -61,7 +61,6 @@ public class DeleteRemoteRepositoryActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
 
         ( (DefaultRemoteRepositoryAdmin) action.getRemoteRepositoryAdmin() ).setArchivaConfiguration(
             archivaConfiguration );
index e83c8d09982b192cb4214d1bc3a59a92da17fcf7..c5ad973b24bea2217544053170d04befb2f0fcb2 100644 (file)
@@ -56,7 +56,6 @@ public class DeleteRepositoryGroupActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
 
         ( (DefaultRepositoryGroupAdmin) action.getRepositoryGroupAdmin() ).setArchivaConfiguration(
             archivaConfiguration );
index bda4130328c4b14d61a7595b4ef54e27500e2f77..df4b07cf0adbb5a36ceb54f150af7efe10c186f7 100644 (file)
@@ -92,7 +92,6 @@ public class EditManagedRepositoryActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
 
         roleManagerControl = MockControl.createControl( RoleManager.class );
         roleManager = (RoleManager) roleManagerControl.getMock();
index f89c14598e853f251c79c9207438ede3847d186b..47c90182a05341272634d9713e22956d6c5d5a14 100644 (file)
@@ -64,7 +64,6 @@ public class EditRemoteRepositoryActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
 
         ( (DefaultRemoteRepositoryAdmin) action.getRemoteRepositoryAdmin() ).setArchivaConfiguration(
             archivaConfiguration );
index 844778aa947d34732b443d9546392ac971d909cf..0d7600b2820faf220ee82ecc90e47a5275ffb4b4 100644 (file)
@@ -65,7 +65,7 @@ public class RepositoryGroupsActionTest
 
         archivaConfigurationControl = MockControl.createControl( ArchivaConfiguration.class );
         archivaConfiguration = (ArchivaConfiguration) archivaConfigurationControl.getMock();
-        action.setArchivaConfiguration( archivaConfiguration );
+
         ( (DefaultRepositoryGroupAdmin) action.getRepositoryGroupAdmin() ).setArchivaConfiguration(
             archivaConfiguration );
         ( (DefaultManagedRepositoryAdmin) ( (DefaultRepositoryGroupAdmin) action.getRepositoryGroupAdmin() ).getManagedRepositoryAdmin() ).setArchivaConfiguration(