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 2010/09/24 18:09:14 UTC
svn commit: r1000932 - in /maven/plugins/trunk/maven-assembly-plugin/src:
main/java/org/apache/maven/plugin/assembly/
main/java/org/apache/maven/plugin/assembly/archive/
main/java/org/apache/maven/plugin/assembly/archive/archiver/
main/java/org/apache/...
Author: jdcasey
Date: Fri Sep 24 16:09:14 2010
New Revision: 1000932
URL: http://svn.apache.org/viewvc?rev=1000932&view=rev
Log:
[MASSEMBLY-115] Add updateOnly flag (default value: false) to control the setForced(..) feature of Archiver instances.
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java?rev=1000932&r1=1000931&r2=1000932&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java Fri Sep 24 16:09:14 2010
@@ -89,4 +89,6 @@ public interface AssemblerConfigurationS
String getArchiverConfig();
MavenFileFilter getMavenFileFilter();
+
+ boolean isUpdateOnly();
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java?rev=1000932&r1=1000931&r2=1000932&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java Fri Sep 24 16:09:14 2010
@@ -320,6 +320,8 @@ public class DefaultAssemblyArchiver
new AssemblyProxyArchiver( prefix, archiver, containerHandlers, extraSelectors, extraFinalizers,
configSource.getWorkingDirectory(), getLogger(), configSource.isDryRun() );
+ archiver.setForced( !configSource.isUpdateOnly() );
+
return archiver;
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java?rev=1000932&r1=1000931&r2=1000932&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java Fri Sep 24 16:09:14 2010
@@ -76,6 +76,8 @@ public class AssemblyProxyArchiver
private final boolean dryRun;
+ private boolean forced;
+
private final Set<String> seenPaths = new HashSet<String>();
private final String assemblyWorkPath;
@@ -501,6 +503,7 @@ public class AssemblyProxyArchiver
}
else
{
+ delegate.setForced( forced );
delegate.createArchive();
}
}
@@ -646,6 +649,7 @@ public class AssemblyProxyArchiver
inPublicApi.set( Boolean.TRUE );
try
{
+ this.forced = forced;
delegate.setForced( forced );
}
finally
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java?rev=1000932&r1=1000931&r2=1000932&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java Fri Sep 24 16:09:14 2010
@@ -59,7 +59,7 @@ public abstract class AbstractAssemblyMo
* Flag allowing one or more executions of the assembly plugin to be configured as skipped for a particular build.
* This makes the assembly plugin more controllable from profiles.
*
- * @parameter expression="${skipAssembly}" default-value="false"
+ * @parameter expression="${assembly.skipAssembly}" default-value="false"
*/
private boolean skipAssembly;
@@ -191,7 +191,7 @@ public abstract class AbstractAssemblyMo
* Sets the TarArchiver behavior on file paths with more than 100 characters length. Valid values are: "warn"
* (default), "fail", "truncate", "gnu", or "omit".
*
- * @parameter expression="${tarLongFileMode}" default-value="warn"
+ * @parameter expression="${assembly.tarLongFileMode}" default-value="warn"
*/
private String tarLongFileMode;
@@ -221,7 +221,7 @@ public abstract class AbstractAssemblyMo
/**
* The Maven Session Object
*
- * @parameter expression="${session}"
+ * @parameter default-value="${session}"
* @required
* @readonly
*/
@@ -256,14 +256,14 @@ public abstract class AbstractAssemblyMo
/**
* Set to false to exclude the assembly id from the assembly final name.
*
- * @parameter expression="${appendAssemblyId}" default-value="true"
+ * @parameter expression="${assembly.appendAssemblyId}" default-value="true"
*/
protected boolean appendAssemblyId;
/**
* Set to true in order to not fail when a descriptor is missing.
*
- * @parameter expression="${ignoreMissingDescriptor}" default-value="false"
+ * @parameter expression="${assembly.ignoreMissingDescriptor}" default-value="false"
*/
protected boolean ignoreMissingDescriptor;
@@ -283,7 +283,7 @@ public abstract class AbstractAssemblyMo
/**
* Controls whether the assembly plugin tries to attach the resulting assembly to the project.
*
- * @parameter expression="${attach}" default-value="true"
+ * @parameter expression="${assembly.attach}" default-value="true"
* @since 2.2-beta-1
*/
private boolean attach;
@@ -318,12 +318,20 @@ public abstract class AbstractAssemblyMo
* This will cause the assembly to run only at the top of a given module tree. That is, run in the project contained
* in the same folder where the mvn execution was launched.
*
- * @parameter expression="${runOnlyAtExecutionRoot}" default-value="false"
+ * @parameter expression="${assembly.runOnlyAtExecutionRoot}" default-value="false"
* @since 2.2-beta-4
*/
private boolean runOnlyAtExecutionRoot;
/**
+ * This will cause the assembly to only update an existing archive, if it exists.
+ *
+ * @parameter expression="${assembly.updatOnly}" default-value="false"
+ * @since 2.2-beta-6
+ */
+ private boolean updateOnly;
+
+ /**
* Create the binary distribution.
*
* @throws org.apache.maven.plugin.MojoExecutionException
@@ -776,4 +784,9 @@ public abstract class AbstractAssemblyMo
{
return mavenFileFilter;
}
+
+ public boolean isUpdateOnly()
+ {
+ return updateOnly;
+ }
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java?rev=1000932&r1=1000931&r2=1000932&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java Fri Sep 24 16:09:14 2010
@@ -140,6 +140,9 @@ public class DefaultAssemblyArchiverTest
configSource.getWorkingDirectory();
csControl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+ configSource.isUpdateOnly();
+ csControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+
final Assembly assembly = new Assembly();
final AssemblyContext context = new DefaultAssemblyContext();
@@ -196,6 +199,9 @@ public class DefaultAssemblyArchiverTest
configSource.getWorkingDirectory();
configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+ configSource.isUpdateOnly();
+ configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+
mm.add( configCtl );
mm.replayAll();
@@ -242,6 +248,9 @@ public class DefaultAssemblyArchiverTest
configSource.getWorkingDirectory();
configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+ configSource.isUpdateOnly();
+ configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+
mm.add( configCtl );
mm.replayAll();
@@ -286,6 +295,9 @@ public class DefaultAssemblyArchiverTest
configSource.getWorkingDirectory();
configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+ configSource.isUpdateOnly();
+ configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+
mm.add( configCtl );
mm.replayAll();
@@ -321,6 +333,9 @@ public class DefaultAssemblyArchiverTest
configSource.getWorkingDirectory();
configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+ configSource.isUpdateOnly();
+ configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+
mm.add( configCtl );
mm.replayAll();
@@ -618,6 +633,10 @@ public class DefaultAssemblyArchiverTest
mm.add( archiverControl );
archiver = (Archiver) archiverControl.getMock();
+
+ archiver.setForced( false );
+ archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+ archiverControl.setVoidCallable( MockControl.ZERO_OR_MORE );
}
// void expectSetArchiverFilters()
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java?rev=1000932&r1=1000931&r2=1000932&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java Fri Sep 24 16:09:14 2010
@@ -168,4 +168,9 @@ public class ConfigSourceStub
project = mavenProject;
}
+ public boolean isUpdateOnly()
+ {
+ return false;
+ }
+
}