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 );
     }


Reply via email to