Author: brett
Date: Wed Dec 29 07:06:17 2010
New Revision: 1053554

URL: http://svn.apache.org/viewvc?rev=1053554&view=rev
Log:
[MRM-1330] update DuplicateArtifactsConsumer to the session-based API

Modified:
    
archiva/trunk/archiva-modules/plugins/problem-reports/src/main/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumer.java
    
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest.java
    
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/resources/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest-context.xml

Modified: 
archiva/trunk/archiva-modules/plugins/problem-reports/src/main/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumer.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/problem-reports/src/main/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumer.java?rev=1053554&r1=1053553&r2=1053554&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/plugins/problem-reports/src/main/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumer.java
 (original)
+++ 
archiva/trunk/archiva-modules/plugins/problem-reports/src/main/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumer.java
 Wed Dec 29 07:06:17 2010
@@ -24,6 +24,8 @@ import org.apache.archiva.checksum.Check
 import org.apache.archiva.metadata.model.ArtifactMetadata;
 import org.apache.archiva.metadata.repository.MetadataRepository;
 import org.apache.archiva.metadata.repository.MetadataRepositoryException;
+import org.apache.archiva.metadata.repository.RepositorySession;
+import org.apache.archiva.metadata.repository.RepositorySessionFactory;
 import org.apache.archiva.metadata.repository.storage.RepositoryPathTranslator;
 import org.apache.archiva.reports.RepositoryProblemFacet;
 import org.apache.commons.collections.CollectionUtils;
@@ -84,6 +86,13 @@ public class DuplicateArtifactsConsumer
      */
     private FileTypes filetypes;
 
+    /**
+     * FIXME: can be of other types
+     *
+     * @plexus.requirement
+     */
+    private RepositorySessionFactory repositorySessionFactory;
+
     private List<String> includes = new ArrayList<String>();
 
     private File repositoryDir;
@@ -91,17 +100,14 @@ public class DuplicateArtifactsConsumer
     private String repoId;
 
     /**
-     * @plexus.requirement
-     */
-    private MetadataRepository metadataRepository;
-
-    /**
      * FIXME: needs to be selected based on the repository in question
      *
      * @plexus.requirement role-hint="maven2"
      */
     private RepositoryPathTranslator pathTranslator;
 
+    private RepositorySession repositorySession;
+
     public String getId()
     {
         return id;
@@ -132,6 +138,7 @@ public class DuplicateArtifactsConsumer
     {
         repoId = repo.getId();
         this.repositoryDir = new File( repo.getLocation() );
+        repositorySession = repositorySessionFactory.createSession();
     }
 
     public void beginScan( ManagedRepositoryConfiguration repo, Date 
whenGathered, boolean executeOnEntireRepo )
@@ -160,6 +167,8 @@ public class DuplicateArtifactsConsumer
             throw new ConsumerException( e.getMessage(), e );
         }
 
+        MetadataRepository metadataRepository = 
repositorySession.getRepository();
+
         List<ArtifactMetadata> results;
         try
         {
@@ -233,7 +242,7 @@ public class DuplicateArtifactsConsumer
 
     public void completeScan()
     {
-        // nothing to do
+        repositorySession.close();
     }
 
     public void completeScan( boolean executeOnEntireRepo )

Modified: 
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/problem-reports/src/test/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest.java?rev=1053554&r1=1053553&r2=1053554&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest.java
 (original)
+++ 
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/java/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest.java
 Wed Dec 29 07:06:17 2010
@@ -22,6 +22,8 @@ package org.apache.archiva.reports.consu
 import org.apache.archiva.metadata.model.ArtifactMetadata;
 import org.apache.archiva.metadata.model.MetadataFacet;
 import org.apache.archiva.metadata.repository.MetadataRepository;
+import org.apache.archiva.metadata.repository.RepositorySession;
+import org.apache.archiva.metadata.repository.RepositorySessionFactory;
 import org.apache.archiva.metadata.repository.storage.RepositoryPathTranslator;
 import org.apache.archiva.reports.RepositoryProblemFacet;
 import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
@@ -76,7 +78,13 @@ public class DuplicateArtifactsConsumerT
         config.setId( TEST_REPO );
         config.setLocation( getTestFile( "target/test-repository" 
).getAbsolutePath() );
 
-        metadataRepository = (MetadataRepository) lookup( 
MetadataRepository.class );
+        metadataRepository = mock( MetadataRepository.class );
+
+        RepositorySession session = mock( RepositorySession.class );
+        when( session.getRepository() ).thenReturn( metadataRepository );
+
+        RepositorySessionFactory factory = (RepositorySessionFactory) lookup( 
RepositorySessionFactory.class );
+        when( factory.createSession() ).thenReturn( session );
 
         pathTranslator = (RepositoryPathTranslator) lookup( 
RepositoryPathTranslator.class, "maven2" );
         when( pathTranslator.getArtifactForPath( TEST_REPO, TEST_FILE ) 
).thenReturn( TEST_METADATA );

Modified: 
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/resources/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest-context.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/problem-reports/src/test/resources/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest-context.xml?rev=1053554&r1=1053553&r2=1053554&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/resources/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest-context.xml
 (original)
+++ 
archiva/trunk/archiva-modules/plugins/problem-reports/src/test/resources/org/apache/archiva/reports/consumers/DuplicateArtifactsConsumerTest-context.xml
 Wed Dec 29 07:06:17 2010
@@ -21,9 +21,9 @@
 <beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
http://www.springframework.org/schema/beans/spring-beans.xsd";>
-  <bean id="metadataRepositoryFactory" 
class="org.apache.archiva.reports.consumers.MockitoFactory"
-        name="metadataRepository">
-    <constructor-arg 
value="org.apache.archiva.metadata.repository.MetadataRepository"/>
+  <bean id="repositorySessionFactoryFactory" 
class="org.apache.archiva.reports.consumers.MockitoFactory"
+        name="repositorySessionFactory">
+    <constructor-arg 
value="org.apache.archiva.metadata.repository.RepositorySessionFactory"/>
   </bean>
   <bean id="repositoryPathTranslatorFactory" 
class="org.apache.archiva.reports.consumers.MockitoFactory"
         name="repositoryPathTranslator#maven2">


Reply via email to