Author: jvanzyl
Date: Thu Nov 2 18:08:35 2006
New Revision: 470634
URL: http://svn.apache.org/viewvc?view=rev&rev=470634
Log:
o breaking out the converter to a separate component to keep the application
component from getting
over crowded.
Added:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java
(contents, props changed)
- copied, changed from r469155,
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/RepositoryManager.java
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java
(contents, props changed)
- copied, changed from r469155,
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java
(with props)
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java
(with props)
Removed:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/RepositoryManager.java
Modified:
maven/archiva/trunk/archiva-core/src/test/java/org/apache/maven/archiva/RepositoryManagerTest.java
Copied:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java
(from r469155,
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/RepositoryManager.java)
URL:
http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java?view=diff&rev=470634&p1=maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/RepositoryManager.java&r1=469155&p2=maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java&r2=470634
==============================================================================
---
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/RepositoryManager.java
(original)
+++
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java
Thu Nov 2 18:08:35 2006
@@ -24,12 +24,12 @@
/**
* @author Jason van Zyl
*/
-public interface RepositoryManager
+public interface Archiva
{
/**
* Role of the Repository Manager
*/
- String ROLE = RepositoryManager.class.getName();
+ String ROLE = Archiva.class.getName();
/**
* Convert a legacy repository to a modern repository. This means a Maven
1.x repository
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/Archiva.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Copied:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java
(from r469155,
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java)
URL:
http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java?view=diff&rev=470634&p1=maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java&r1=469155&p2=maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java&r2=470634
==============================================================================
---
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultRepositoryManager.java
(original)
+++
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java
Thu Nov 2 18:08:35 2006
@@ -16,106 +16,31 @@
* limitations under the License.
*/
+import org.apache.maven.archiva.conversion.LegacyRepositoryConverter;
import org.apache.maven.archiva.converter.RepositoryConversionException;
-import org.apache.maven.archiva.converter.RepositoryConverter;
-import org.apache.maven.archiva.discoverer.ArtifactDiscoverer;
import org.apache.maven.archiva.discoverer.DiscovererException;
-import org.apache.maven.archiva.discoverer.filter.AcceptAllArtifactFilter;
-import org.apache.maven.archiva.discoverer.filter.SnapshotArtifactFilter;
-import org.apache.maven.archiva.reporting.ReportGroup;
-import org.apache.maven.archiva.reporting.ReportingDatabase;
-import org.apache.maven.archiva.reporting.ReportingStore;
-import org.apache.maven.archiva.reporting.ReportingStoreException;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
-import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
-import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
import java.io.File;
-import java.net.MalformedURLException;
-import java.util.List;
/**
* @author Jason van Zyl
* @plexus.component
+ * @todo turn this into a general conversion component and hide all this crap
here.
*/
-public class DefaultRepositoryManager
- implements RepositoryManager
+public class DefaultArchiva
+ implements Archiva
{
/**
- * @plexus.requirement role-hint="legacy"
- */
- private ArtifactDiscoverer artifactDiscoverer;
-
- /**
- * @plexus.requirement role-hint="legacy"
- */
- private ArtifactRepositoryLayout legacyLayout;
-
- /**
- * @plexus.requirement role-hint="default"
- */
- private ArtifactRepositoryLayout defaultLayout;
-
- /**
* @plexus.requirement
*/
- private ArtifactRepositoryFactory artifactRepositoryFactory;
+ private LegacyRepositoryConverter legacyRepositoryConverter;
- /**
- * @plexus.requirement
- */
- private RepositoryConverter repositoryConverter;
-
- /**
- * @plexus.requirement
- */
- private ReportingStore reportingStore;
-
- /**
- * @plexus.requirement role-hint="health"
- */
- private ReportGroup reportGroup;
-
- public void convertLegacyRepository( File legacyRepositoryDirectory, File
repositoryDirectory,
+ public void convertLegacyRepository( File legacyRepositoryDirectory,
+ File repositoryDirectory,
boolean includeSnapshots )
throws RepositoryConversionException, DiscovererException
{
- ArtifactRepository legacyRepository;
-
- ArtifactRepository repository;
-
- try
- {
- legacyRepository =
artifactRepositoryFactory.createArtifactRepository( "legacy",
-
legacyRepositoryDirectory.toURI().toURL().toString(),
-
legacyLayout, null, null );
-
- repository = artifactRepositoryFactory.createArtifactRepository(
"default",
-
repositoryDirectory.toURI().toURL().toString(),
-
defaultLayout, null, null );
- }
- catch ( MalformedURLException e )
- {
- throw new RepositoryConversionException( "Error convering legacy
repository.", e );
- }
-
- ArtifactFilter filter =
- includeSnapshots ? new AcceptAllArtifactFilter() :
(ArtifactFilter) new SnapshotArtifactFilter();
- List legacyArtifacts = artifactDiscoverer.discoverArtifacts(
legacyRepository, null, filter );
-
- ReportingDatabase reporter;
- try
- {
- reporter = reportingStore.getReportsFromStore( repository,
reportGroup );
-
- repositoryConverter.convert( legacyArtifacts, repository, reporter
);
-
- reportingStore.storeReports( reporter, repository );
- }
- catch ( ReportingStoreException e )
- {
- throw new RepositoryConversionException( "Error convering legacy
repository.", e );
- }
+ legacyRepositoryConverter.convertLegacyRepository(
legacyRepositoryDirectory, repositoryDirectory,
+ includeSnapshots );
}
}
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/DefaultArchiva.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java
URL:
http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java?view=auto&rev=470634
==============================================================================
---
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java
(added)
+++
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java
Thu Nov 2 18:08:35 2006
@@ -0,0 +1,107 @@
+package org.apache.maven.archiva.conversion;
+
+import org.apache.maven.archiva.Archiva;
+import org.apache.maven.archiva.reporting.ReportingStore;
+import org.apache.maven.archiva.reporting.ReportGroup;
+import org.apache.maven.archiva.reporting.ReportingDatabase;
+import org.apache.maven.archiva.reporting.ReportingStoreException;
+import org.apache.maven.archiva.converter.RepositoryConverter;
+import org.apache.maven.archiva.converter.RepositoryConversionException;
+import org.apache.maven.archiva.discoverer.ArtifactDiscoverer;
+import org.apache.maven.archiva.discoverer.DiscovererException;
+import org.apache.maven.archiva.discoverer.filter.AcceptAllArtifactFilter;
+import org.apache.maven.archiva.discoverer.filter.SnapshotArtifactFilter;
+import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
+import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+
+import java.io.File;
+import java.net.MalformedURLException;
+import java.util.List;
+
+/**
+ * @author Jason van Zyl
+ * @plexus.component
+ * @todo turn this into a general conversion component and hide all this crap
here.
+ */
+public class DefaultLegacyRepositoryConverter
+ implements LegacyRepositoryConverter
+{
+ /**
+ * @plexus.requirement role-hint="legacy"
+ */
+ private ArtifactDiscoverer artifactDiscoverer;
+
+ /**
+ * @plexus.requirement role-hint="legacy"
+ */
+ private ArtifactRepositoryLayout legacyLayout;
+
+ /**
+ * @plexus.requirement role-hint="default"
+ */
+ private ArtifactRepositoryLayout defaultLayout;
+
+ /**
+ * @plexus.requirement
+ */
+ private ArtifactRepositoryFactory artifactRepositoryFactory;
+
+ /**
+ * @plexus.requirement
+ */
+ private RepositoryConverter repositoryConverter;
+
+ /**
+ * @plexus.requirement
+ */
+ private ReportingStore reportingStore;
+
+ /**
+ * @plexus.requirement role-hint="health"
+ */
+ private ReportGroup reportGroup;
+
+ public void convertLegacyRepository( File legacyRepositoryDirectory, File
repositoryDirectory,
+ boolean includeSnapshots )
+ throws RepositoryConversionException, DiscovererException
+ {
+ ArtifactRepository legacyRepository;
+
+ ArtifactRepository repository;
+
+ try
+ {
+ legacyRepository =
artifactRepositoryFactory.createArtifactRepository( "legacy",
+
legacyRepositoryDirectory.toURI().toURL().toString(),
+
legacyLayout, null, null );
+
+ repository = artifactRepositoryFactory.createArtifactRepository(
"default",
+
repositoryDirectory.toURI().toURL().toString(),
+
defaultLayout, null, null );
+ }
+ catch ( MalformedURLException e )
+ {
+ throw new RepositoryConversionException( "Error convering legacy
repository.", e );
+ }
+
+ ArtifactFilter filter =
+ includeSnapshots ? new AcceptAllArtifactFilter() :
(ArtifactFilter) new SnapshotArtifactFilter();
+ List legacyArtifacts = artifactDiscoverer.discoverArtifacts(
legacyRepository, null, filter );
+
+ ReportingDatabase reporter;
+ try
+ {
+ reporter = reportingStore.getReportsFromStore( repository,
reportGroup );
+
+ repositoryConverter.convert( legacyArtifacts, repository, reporter
);
+
+ reportingStore.storeReports( reporter, repository );
+ }
+ catch ( ReportingStoreException e )
+ {
+ throw new RepositoryConversionException( "Error convering legacy
repository.", e );
+ }
+ }
+}
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/DefaultLegacyRepositoryConverter.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java
URL:
http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java?view=auto&rev=470634
==============================================================================
---
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java
(added)
+++
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java
Thu Nov 2 18:08:35 2006
@@ -0,0 +1,25 @@
+package org.apache.maven.archiva.conversion;
+
+import org.apache.maven.archiva.converter.RepositoryConversionException;
+import org.apache.maven.archiva.discoverer.DiscovererException;
+
+import java.io.File;
+
+/**
+ * @author Jason van Zyl
+ */
+public interface LegacyRepositoryConverter
+{
+ String ROLE = LegacyRepositoryConverter.class.getName();
+
+ /**
+ * Convert a legacy repository to a modern repository. This means a Maven
1.x repository
+ * using v3 POMs to a Maven 2.x repository using v4.0.0 POMs.
+ *
+ * @param legacyRepositoryDirectory
+ * @param repositoryDirectory
+ * @throws org.apache.maven.archiva.converter.RepositoryConversionException
+ */
+ void convertLegacyRepository( File legacyRepositoryDirectory, File
repositoryDirectory, boolean includeSnapshots )
+ throws RepositoryConversionException, DiscovererException;
+}
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
maven/archiva/trunk/archiva-core/src/main/java/org/apache/maven/archiva/conversion/LegacyRepositoryConverter.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified:
maven/archiva/trunk/archiva-core/src/test/java/org/apache/maven/archiva/RepositoryManagerTest.java
URL:
http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-core/src/test/java/org/apache/maven/archiva/RepositoryManagerTest.java?view=diff&rev=470634&r1=470633&r2=470634
==============================================================================
---
maven/archiva/trunk/archiva-core/src/test/java/org/apache/maven/archiva/RepositoryManagerTest.java
(original)
+++
maven/archiva/trunk/archiva-core/src/test/java/org/apache/maven/archiva/RepositoryManagerTest.java
Thu Nov 2 18:08:35 2006
@@ -33,7 +33,7 @@
File repositoryDirectory = getTestFile( "target/maven-2.x-repository"
);
- RepositoryManager rm = (RepositoryManager) lookup(
RepositoryManager.ROLE );
+ Archiva rm = (Archiva) lookup( Archiva.ROLE );
rm.convertLegacyRepository( legacyRepositoryDirectory,
repositoryDirectory, true );
}