You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2006/05/03 23:16:21 UTC

svn commit: r399435 - in /maven/plugins/trunk/maven-deploy-plugin: ./ src/main/java/org/apache/maven/plugin/deploy/ src/test/java/org/apache/maven/plugin/deploy/ src/test/resources/unit/deploy-file-artifact-not-jar/ src/test/resources/unit/deploy-file-...

Author: jdcasey
Date: Wed May  3 14:16:19 2006
New Revision: 399435

URL: http://svn.apache.org/viewcvs?rev=399435&view=rev
Log:
Adding support for alternative repository layouts, via -DrepositoryLayout=legacy for instance.

Modified:
    maven/plugins/trunk/maven-deploy-plugin/pom.xml
    maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java
    maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java
    maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-artifact-not-jar/plugin-config.xml
    maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-classifier/plugin-config.xml
    maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml
    maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-test/plugin-config.xml

Modified: maven/plugins/trunk/maven-deploy-plugin/pom.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/pom.xml?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-deploy-plugin/pom.xml Wed May  3 14:16:19 2006
@@ -18,6 +18,11 @@
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
+      <artifactId>maven-core</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
       <artifactId>maven-project</artifactId>
       <version>2.0</version>
     </dependency>

Modified: maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java (original)
+++ maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java Wed May  3 14:16:19 2006
@@ -23,12 +23,14 @@
 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.execution.MavenSession;
 import org.apache.maven.model.Model;
 import org.apache.maven.model.Parent;
 import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
 import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.project.artifact.ProjectArtifactMetadata;
+import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
 import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
 
@@ -92,6 +94,22 @@
      * @required
      */
     private String repositoryId;
+    
+    /**
+     * The type of remote repository layout to deploy to. Try <i>legacy</i> for a Maven 1.x-style repository layout.
+     * @parameter expression="${repositoryLayout}" default-value="default"
+     * @required
+     */
+    private String repositoryLayout;
+    
+    /**
+     * Current session, for looking up repository layout instances, etc.
+     * 
+     * @parameter default-value="${session}"
+     * @required
+     * @readonly
+     */
+    private MavenSession session;
 
     /**
      * URL where the artifact will be deployed. <br/>
@@ -106,16 +124,19 @@
      * @component
      */
     private ArtifactFactory artifactFactory;
-
+    
     /**
      * @component
      */
-    private ArtifactRepositoryLayout layout;
-
+    private ArtifactRepositoryFactory repositoryFactory;
+    
     /**
+     * This is a concession to keep the unit tests running.
+     * @todo REMOVE!
+     * 
      * @component
      */
-    private ArtifactRepositoryFactory repositoryFactory;
+    private ArtifactRepositoryLayout defaultLayout;
 
     /**
      * @parameter expression="${pomFile}"
@@ -174,6 +195,26 @@
         if ( !file.exists() )
         {
             throw new MojoExecutionException( file.getPath() + " not found." );
+        }
+        
+        ArtifactRepositoryLayout layout;
+        
+        // FIXME: We shouldn't have to do this, since the session is @required, but the testing harness cannot populate it...
+        if ( session != null )
+        {
+            try
+            {
+                System.out.println( "Session is: " + session );
+                layout = (ArtifactRepositoryLayout) session.lookup( ArtifactRepositoryLayout.ROLE, repositoryLayout );
+            }
+            catch ( ComponentLookupException e )
+            {
+                throw new MojoExecutionException( "Failed to lookup repository layout: \'" + repositoryLayout + "\'. Perhaps you meant 'default' or 'legacy'? Error: " + e.getMessage(), e );
+            }
+        }
+        else
+        {
+            layout = defaultLayout;
         }
 
         ArtifactRepository deploymentRepository =

Modified: maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java (original)
+++ maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java Wed May  3 14:16:19 2006
@@ -22,6 +22,7 @@
 import java.util.Iterator;
 
 import org.apache.maven.plugin.testing.AbstractMojoTestCase;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Model;
 import org.codehaus.plexus.util.FileUtils;
 
@@ -98,7 +99,7 @@
         assertEquals( "deploy-test", repositoryId );
 
         assertEquals( "file://" + getBasedir() + "/target/remote-repo/deploy-file-test", url );
-
+        
         mojo.execute();
 
         //check the generated pom

Modified: maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-artifact-not-jar/plugin-config.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-artifact-not-jar/plugin-config.xml?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-artifact-not-jar/plugin-config.xml (original)
+++ maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-artifact-not-jar/plugin-config.xml Wed May  3 14:16:19 2006
@@ -12,7 +12,8 @@
 		  <repositoryId>deploy-test</repositoryId>
 		  <url>file://${basedir}/target/remote-repo/deploy-file-artifact-not-jar</url>
 		  <uniqueVersion>true</uniqueVersion>
-		  <localRepository>${localRepository}</localRepository>
+		  <localRepository>${localRepository}</localRepository>
+          <repositoryLayout>default</repositoryLayout>
 		</configuration>
       </plugin>
     </plugins>

Modified: maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-classifier/plugin-config.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-classifier/plugin-config.xml?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-classifier/plugin-config.xml (original)
+++ maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-classifier/plugin-config.xml Wed May  3 14:16:19 2006
@@ -13,7 +13,8 @@
 		  <url>file://${basedir}/target/remote-repo/deploy-file-classifier</url>
 		  <uniqueVersion>true</uniqueVersion>
 		  <localRepository>${localRepository}</localRepository>
-		  <classifier>bin</classifier>
+		  <classifier>bin</classifier>
+          <repositoryLayout>default</repositoryLayout>
 		</configuration>
       </plugin>
     </plugins>

Modified: maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml (original)
+++ maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml Wed May  3 14:16:19 2006
@@ -13,7 +13,8 @@
 		  <url>file://${basedir}/target/remote-repo/deploy-file-pom-file</url>
 		  <uniqueVersion>true</uniqueVersion>
 		  <localRepository>${localRepository}</localRepository>
-		  <pomFile>${basedir}/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml</pomFile>
+		  <pomFile>${basedir}/src/test/resources/unit/deploy-file-pom-file/plugin-config.xml</pomFile>
+          <repositoryLayout>default</repositoryLayout>
 		</configuration>
       </plugin>
     </plugins>

Modified: maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-test/plugin-config.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-test/plugin-config.xml?rev=399435&r1=399434&r2=399435&view=diff
==============================================================================
--- maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-test/plugin-config.xml (original)
+++ maven/plugins/trunk/maven-deploy-plugin/src/test/resources/unit/deploy-file-test/plugin-config.xml Wed May  3 14:16:19 2006
@@ -12,7 +12,8 @@
 		  <repositoryId>deploy-test</repositoryId>
 		  <url>file://${basedir}/target/remote-repo/deploy-file-test</url>
 		  <uniqueVersion>true</uniqueVersion>
-		  <localRepository>${localRepository}</localRepository>
+		  <localRepository>${localRepository}</localRepository>
+          <repositoryLayout>default</repositoryLayout>
 		</configuration>
       </plugin>
     </plugins>