]> source.dussan.org Git - archiva.git/commitdiff
method must received both source and target repo to avoid the ugly -stage to be done...
authorOlivier Lamy <olamy@apache.org>
Tue, 18 Sep 2012 22:02:17 +0000 (22:02 +0000)
committerOlivier Lamy <olamy@apache.org>
Tue, 18 Sep 2012 22:02:17 +0000 (22:02 +0000)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1387386 13f79535-47bb-0310-9956-ffa450edef68

archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/services/MergeRepositoriesService.java
archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultMergeRepositoriesService.java
archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/test/java/org/apache/archiva/rest/services/MergeRepositoriesServiceTest.java

index 6ad8326d6157fbdd69c3a57846e6ac413eebd724..4bc02ab0e047d562fd43b4cbc4b2ab87f1d67c5d 100644 (file)
@@ -37,7 +37,7 @@ import java.util.List;
 @Path ( "/mergeRepositoriesService/" )
 public interface MergeRepositoriesService
 {
-    @Path ( "mergeConflictedArtifacts/{repositoryId}" )
+    @Path ( "mergeConflictedArtifacts/{sourceRepositoryId}/{targetRepositoryId}" )
     @GET
     @Produces ( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )
     @RedbackAuthorization ( noPermission = true )
@@ -45,6 +45,7 @@ public interface MergeRepositoriesService
      * <b>permissions are checked in impl</b>
      * @since 1.4-M3
      */
-    List<Artifact> getMergeConflictedArtifacts( @PathParam ( "repositoryId" ) String repositoryId )
+    List<Artifact> getMergeConflictedArtifacts( @PathParam ( "sourceRepositoryId" ) String sourceRepositoryId,
+                                                @PathParam ( "targetRepositoryId" ) String targetRepositoryId )
         throws ArchivaRestServiceException;
 }
index 3c20deb806fdc5c495c283ccba7d3a92f7760df1..b88b4b1203503a7cd9ee90f7e04d27588fff31ab 100644 (file)
@@ -45,18 +45,17 @@ public class DefaultMergeRepositoriesService
     private Maven2RepositoryMerger repositoryMerger;
 
 
-    public List<Artifact> getMergeConflictedArtifacts( String repositoryId )
+    public List<Artifact> getMergeConflictedArtifacts( String sourceRepositoryId, String targetRepositoryId )
         throws ArchivaRestServiceException
     {
-        String sourceRepoId = repositoryId + "-stage";
         RepositorySession repositorySession = repositorySessionFactory.createSession();
         try
         {
             List<ArtifactMetadata> artifactMetadatas =
-                repositoryMerger.getConflictingArtifacts( repositorySession.getRepository(), sourceRepoId,
-                                                          repositoryId );
+                repositoryMerger.getConflictingArtifacts( repositorySession.getRepository(), sourceRepositoryId,
+                                                          targetRepositoryId );
 
-            return buildArtifacts( artifactMetadatas, repositoryId );
+            return buildArtifacts( artifactMetadatas, sourceRepositoryId );
         }
         catch ( Exception e )
         {
index ecba587cf16860807cd0fc886fd21e6b2bac8d00..017ad1ae0969ba35efb4cd0cdf844ec5dd96fc46 100644 (file)
@@ -80,7 +80,7 @@ public class MergeRepositoriesServiceTest
 
             MergeRepositoriesService service = getMergeRepositoriesService();
 
-            List<Artifact> artifactMetadatas = service.getMergeConflictedArtifacts( testRepoId );
+            List<Artifact> artifactMetadatas = service.getMergeConflictedArtifacts( testRepoId + "-stage", testRepoId );
 
             log.info( "conflicts: {}", artifactMetadatas );