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>