You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by pg...@apache.org on 2011/02/24 17:43:47 UTC
svn commit: r1074207 - in /maven/plugins/trunk/maven-deploy-plugin/src:
main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java
test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java
Author: pgier
Date: Thu Feb 24 16:43:47 2011
New Revision: 1074207
URL: http://svn.apache.org/viewvc?rev=1074207&view=rev
Log:
[MDEPLOY-48] Refactor handling of sources and javadocs to work with Maven 2.x
Modified:
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
Modified: maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-deploy-plugin/src/main/java/org/apache/maven/plugin/deploy/DeployFileMojo.java?rev=1074207&r1=1074206&r2=1074207&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 Thu Feb 24 16:43:47 2011
@@ -30,6 +30,8 @@ import org.apache.maven.model.io.xpp3.Ma
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.MavenProjectHelper;
import org.apache.maven.project.artifact.ProjectArtifactMetadata;
import org.apache.maven.project.validation.ModelValidationResult;
import org.apache.maven.project.validation.ModelValidator;
@@ -44,6 +46,8 @@ import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
+import java.util.Iterator;
+import java.util.List;
/**
* Installs the artifact in the remote repository.
@@ -56,6 +60,22 @@ public class DeployFileMojo
extends AbstractDeployMojo
{
/**
+ * The default Maven project created when building the plugin
+ *
+ * @parameter default-value="${project}"
+ * @required
+ * @readonly
+ */
+ private MavenProject project;
+
+ /**
+ * Used for attaching the source and javadoc jars to the project.
+ *
+ * @component
+ */
+ private MavenProjectHelper projectHelper;
+
+ /**
* GroupId of the artifact to be deployed. Retrieved from POM file if specified.
*
* @parameter expression="${groupId}"
@@ -245,6 +265,8 @@ public class DeployFileMojo
{
artifact.setRelease( true );
}
+
+ project.setArtifact( artifact );
try
{
@@ -257,27 +279,27 @@ public class DeployFileMojo
if ( sources != null )
{
- artifact = artifactFactory.createArtifactWithClassifier( groupId, artifactId, version, "jar", "sources" );
- try
- {
- getDeployer().deploy( sources, artifact, deploymentRepository, getLocalRepository() );
- }
- catch ( ArtifactDeploymentException e )
- {
- throw new MojoExecutionException( "Error deploying sources " + sources + ": " + e.getMessage(), e );
- }
+ projectHelper.attachArtifact( project, "jar", "sources", sources );
}
if ( javadoc != null )
{
- artifact = artifactFactory.createArtifactWithClassifier( groupId, artifactId, version, "jar", "javadoc" );
+ projectHelper.attachArtifact( project, "jar", "javadoc", javadoc );
+ }
+
+ List attachedArtifacts = project.getAttachedArtifacts();
+
+ for ( Iterator i = attachedArtifacts.iterator(); i.hasNext(); )
+ {
+ Artifact attached = ( Artifact ) i.next();
+
try
{
- getDeployer().deploy( javadoc, artifact, deploymentRepository, getLocalRepository() );
+ getDeployer().deploy( attached.getFile(), attached, deploymentRepository, getLocalRepository() );
}
catch ( ArtifactDeploymentException e )
{
- throw new MojoExecutionException( "Error deploying API docs " + javadoc + ": " + e.getMessage(), e );
+ throw new MojoExecutionException( "Error deploying attached artifact " + attached.getFile() + ": " + e.getMessage(), e );
}
}
Modified: maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-deploy-plugin/src/test/java/org/apache/maven/plugin/deploy/DeployFileMojoTest.java?rev=1074207&r1=1074206&r2=1074207&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 Thu Feb 24 16:43:47 2011
@@ -25,6 +25,7 @@ import java.util.ArrayList;
import java.util.Iterator;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
+import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
import org.apache.maven.model.Model;
/**
@@ -39,6 +40,8 @@ public class DeployFileMojoTest
private File remoteRepo;
+ MavenProjectStub projectStub = new MavenProjectStub();
+
public void setUp()
throws Exception
{
@@ -50,6 +53,8 @@ public class DeployFileMojoTest
{
remoteRepo.mkdirs();
}
+
+ projectStub.setAttachedArtifacts( new ArrayList() );
}
public void testDeployTestEnvironment()
@@ -70,6 +75,8 @@ public class DeployFileMojoTest
DeployFileMojo mojo = (DeployFileMojo) lookupMojo( "deploy-file", testPom );
assertNotNull( mojo );
+
+ setVariableValueToObject( mojo, "project", projectStub );
String groupId = (String) getVariableValueFromObject( mojo, "groupId" );
@@ -165,6 +172,8 @@ public class DeployFileMojoTest
assertNotNull( mojo );
+ setVariableValueToObject( mojo, "project", projectStub );
+
File pomFile = ( File ) getVariableValueFromObject( mojo, "pomFile" );
assertNotNull( pomFile );
@@ -183,6 +192,8 @@ public class DeployFileMojoTest
assertNotNull( mojo );
+ setVariableValueToObject( mojo, "project", projectStub );
+
String classifier = ( String ) getVariableValueFromObject( mojo, "classifier" );
String groupId = ( String ) getVariableValueFromObject( mojo, "groupId" );
@@ -223,6 +234,8 @@ public class DeployFileMojoTest
assertNotNull( mojo );
+ setVariableValueToObject( mojo, "project", projectStub );
+
String groupId = (String) getVariableValueFromObject( mojo, "groupId" );
String artifactId = (String) getVariableValueFromObject( mojo, "artifactId" );
@@ -257,6 +270,8 @@ public class DeployFileMojoTest
assertNotNull( mojo );
+ setVariableValueToObject( mojo, "project", projectStub );
+
String repositoryLayout = (String) getVariableValueFromObject( mojo, "repositoryLayout" );
String groupId = (String) getVariableValueFromObject( mojo, "groupId" );