]> source.dussan.org Git - archiva.git/commitdiff
[MRM-1509] change xmlrpc to use new repository administration management api : switch...
authorOlivier Lamy <olamy@apache.org>
Mon, 5 Sep 2011 13:44:04 +0000 (13:44 +0000)
committerOlivier Lamy <olamy@apache.org>
Mon, 5 Sep 2011 13:44:04 +0000 (13:44 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1165281 13f79535-47bb-0310-9956-ffa450edef68

archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-api/src/main/java/org/apache/archiva/web/xmlrpc/api/AdministrationService.java
archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/main/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImpl.java
archiva-modules/archiva-web/archiva-xmlrpc/archiva-xmlrpc-services/src/test/java/org/apache/archiva/web/xmlrpc/services/AdministrationServiceImplTest.java

index b0ee685a4b0a7676da58b78a4b29208109f41118..f50bab5e9d4886a75ca96bc1a32a6436f30b29d1 100644 (file)
@@ -73,7 +73,8 @@ public interface AdministrationService
      *
      * @return
      */
-    List<RemoteRepository> getAllRemoteRepositories();
+    List<RemoteRepository> getAllRemoteRepositories()
+        throws RepositoryAdminException;
 
     /**
      * Deletes given artifact from the specified repository.
index e181f4a97eb82f67f38a8e6dcbe1f3c155f97b1f..bdc558afd509f6602cd919e2ba8a089cc8c5d665 100644 (file)
@@ -22,6 +22,7 @@ package org.apache.archiva.web.xmlrpc.services;
 import org.apache.archiva.admin.AuditInformation;
 import org.apache.archiva.admin.repository.RepositoryAdminException;
 import org.apache.archiva.admin.repository.managed.ManagedRepositoryAdmin;
+import org.apache.archiva.admin.repository.remote.RemoteRepositoryAdmin;
 import org.apache.archiva.audit.AuditEvent;
 import org.apache.archiva.audit.AuditListener;
 import org.apache.archiva.metadata.model.ArtifactMetadata;
@@ -46,7 +47,6 @@ import org.apache.maven.archiva.configuration.Configuration;
 import org.apache.maven.archiva.configuration.IndeterminateConfigurationException;
 import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
 import org.apache.maven.archiva.configuration.ProxyConnectorConfiguration;
-import org.apache.maven.archiva.configuration.RemoteRepositoryConfiguration;
 import org.apache.maven.archiva.configuration.RepositoryScanningConfiguration;
 import org.apache.maven.archiva.consumers.InvalidRepositoryContentConsumer;
 import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer;
@@ -100,6 +100,8 @@ public class AdministrationServiceImpl
 
     private ManagedRepositoryAdmin managedRepositoryAdmin;
 
+    private RemoteRepositoryAdmin remoteRepositoryAdmin;
+
     private static final String REPOSITORY_ID_VALID_EXPRESSION = "^[a-zA-Z0-9._-]+$";
 
     private static final String REPOSITORY_NAME_VALID_EXPRESSION = "^([a-zA-Z0-9.)/_(-]|\\s)+$";
@@ -113,7 +115,8 @@ public class AdministrationServiceImpl
                                       Collection<RepositoryListener> listeners,
                                       RepositoryStatisticsManager repositoryStatisticsManager,
                                       RepositoryMerger repositoryMerger, AuditListener auditListener,
-                                      ManagedRepositoryAdmin managedRepositoryAdmin )
+                                      ManagedRepositoryAdmin managedRepositoryAdmin,
+                                      RemoteRepositoryAdmin remoteRepositoryAdmin )
     {
         this.archivaConfiguration = archivaConfig;
         this.repoConsumersUtil = repoConsumersUtil;
@@ -125,6 +128,7 @@ public class AdministrationServiceImpl
         this.repositoryMerger = repositoryMerger;
         this.auditListener = auditListener;
         this.managedRepositoryAdmin = managedRepositoryAdmin;
+        this.remoteRepositoryAdmin = remoteRepositoryAdmin;
     }
 
     /**
@@ -326,13 +330,11 @@ public class AdministrationServiceImpl
      * @see AdministrationService#getAllRemoteRepositories()
      */
     public List<RemoteRepository> getAllRemoteRepositories()
+        throws RepositoryAdminException
     {
         List<RemoteRepository> remoteRepos = new ArrayList<RemoteRepository>();
 
-        Configuration config = archivaConfiguration.getConfiguration();
-        List<RemoteRepositoryConfiguration> remoteRepoConfigs = config.getRemoteRepositories();
-
-        for ( RemoteRepositoryConfiguration repoConfig : remoteRepoConfigs )
+        for ( org.apache.archiva.admin.repository.remote.RemoteRepository repoConfig : remoteRepositoryAdmin.getRemoteRepositories() )
         {
             RemoteRepository repo = new RemoteRepository( repoConfig.getId(), repoConfig.getName(), repoConfig.getUrl(),
                                                           repoConfig.getLayout() );
index 163e9caeffc8a2a68240fdde49547356a9cd15ce..8acdd2f4b9525838d63066e5d635426cc11e7645 100644 (file)
@@ -22,6 +22,7 @@ package org.apache.archiva.web.xmlrpc.services;
 import junit.framework.TestCase;
 import org.apache.archiva.admin.repository.RepositoryCommonValidator;
 import org.apache.archiva.admin.repository.managed.DefaultManagedRepositoryAdmin;
+import org.apache.archiva.admin.repository.remote.DefaultRemoteRepositoryAdmin;
 import org.apache.archiva.audit.AuditEvent;
 import org.apache.archiva.audit.AuditListener;
 import org.apache.archiva.metadata.model.ArtifactMetadata;
@@ -158,6 +159,8 @@ public class AdministrationServiceImplTest
 
     private DefaultManagedRepositoryAdmin managedRepositoryAdmin;
 
+    private DefaultRemoteRepositoryAdmin remoteRepositoryAdmin;
+
     private ApplicationContext applicationContext;
 
     @Before
@@ -233,10 +236,17 @@ public class AdministrationServiceImplTest
 
         managedRepositoryAdmin.setRepositoryCommonValidator( repositoryCommonValidator );
 
+        remoteRepositoryAdmin = new DefaultRemoteRepositoryAdmin();
+        remoteRepositoryAdmin.setArchivaConfiguration( archivaConfig );
+        remoteRepositoryAdmin.setAuditListeners( Arrays.asList( auditListener ) );
+
+        remoteRepositoryAdmin.setRepositoryCommonValidator( repositoryCommonValidator );
+
         service = new AdministrationServiceImpl( archivaConfig, repoConsumersUtil, repositoryFactory,
                                                  repositorySessionFactory, repositoryTaskScheduler,
                                                  Collections.singletonList( listener ), repositoryStatisticsManager,
-                                                 repositoryMerger, auditListener, managedRepositoryAdmin );
+                                                 repositoryMerger, auditListener, managedRepositoryAdmin,
+                                                 remoteRepositoryAdmin );
     }
 
     /* Tests for repository consumers */