You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by br...@apache.org on 2010/12/29 08:06:17 UTC
svn commit: r1053554 - in
/archiva/trunk/archiva-modules/plugins/problem-reports/src:
main/java/org/apache/archiva/reports/consumers/
test/java/org/apache/archiva/reports/consumers/
test/resources/org/apache/archiva/reports/consumers/
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">