You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by de...@apache.org on 2012/10/24 15:28:12 UTC
svn commit: r1401670 - in /maven/plugins/trunk/maven-assembly-plugin/src:
it/projects/filtering-feature/filters-defined-in-build/
it/projects/filtering-feature/filters-defined-in-build/src/main/config/
it/projects/filtering-feature/filtersDefinedInAsse...
Author: dennisl
Date: Wed Oct 24 13:28:11 2012
New Revision: 1401670
URL: http://svn.apache.org/viewvc?rev=1401670&view=rev
Log:
[MASSEMBLY-546] Cannot supply escapeString for filtering
Added a new parameter called escapeString that works in the same way as Maven Resource Plugin.
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml
maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-1.properties
maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh
maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/config/file.txt
maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh
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/format/FileFormatter.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/format/FileFormatterTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.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/it/projects/filtering-feature/filters-defined-in-build/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml Wed Oct 24 13:28:11 2012
@@ -23,6 +23,7 @@
<descriptor>${basedir}/src/main/assembly/descriptor.xml</descriptor>
</descriptors>
<appendAssemblyId>false</appendAssemblyId>
+ <escapeString>\</escapeString>
</configuration>
<executions>
<execution>
Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-1.properties
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-1.properties?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-1.properties (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-1.properties Wed Oct 24 13:28:11 2012
@@ -1,3 +1,4 @@
test.build.filter.props.1=${filter.build}
+escapedString=\${project.artifactId}
test.assembly.filter.props.1=${filter.assembly}
test.pom.props.1=${project.artifactId}-${project.version}.${project.packaging}
\ No newline at end of file
Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh Wed Oct 24 13:28:11 2012
@@ -12,6 +12,12 @@ try
System.out.println("file-1.properties was not filtered");
return false;
}
+ s = r.readLine();
+ if(!s.contains("escapedString=${project.artifactId}"))
+ {
+ System.out.println("file-1.properties did not escape filtering");
+ return false;
+ }
file = new File( basedir, "target/filters-defined-in-build-1/file-2.properties");
r = new BufferedReader(new FileReader(file));
Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/config/file.txt
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/config/file.txt?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/config/file.txt (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/config/file.txt Wed Oct 24 13:28:11 2012
@@ -1 +1,2 @@
${test.properties}
+\${project.artifactId}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh Wed Oct 24 13:28:11 2012
@@ -11,6 +11,14 @@ try
BufferedReader r = new BufferedReader(new FileReader(file));
String s = r.readLine();
result = s.equals("foo");
+ if(result) {
+ s = r.readLine();
+ if(!s.contains("\\"))
+ {
+ System.out.println("file.txt escaped filtering");
+ return false;
+ }
+ }
}
}
catch( IOException e )
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=1401670&r1=1401669&r2=1401670&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 Wed Oct 24 13:28:11 2012
@@ -97,4 +97,6 @@ public interface AssemblerConfigurationS
boolean isIgnorePermissions();
String getEncoding();
+
+ String getEscapeString();
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java Wed Oct 24 13:28:11 2012
@@ -73,7 +73,7 @@ public class FileFormatter
}
if ( filter )
- result = doFileFilter( source, tempRoot, encoding );
+ result = doFileFilter( source, tempRoot, encoding, configSource.getEscapeString() );
String lineEndingChars = AssemblyFileUtils.getLineEndingCharacters( lineEnding );
if ( lineEndingChars != null )
@@ -84,7 +84,7 @@ public class FileFormatter
return result;
}
- private File doFileFilter( File source, File tempRoot, String encoding )
+ private File doFileFilter( File source, File tempRoot, String encoding, String escapeString )
throws AssemblyFormattingException
{
try
@@ -96,6 +96,7 @@ public class FileFormatter
MavenFileFilterRequest filterRequest = new MavenFileFilterRequest( source, target, true, configSource.getProject(),
configSource.getFilters(), isPropertiesFile, encoding, configSource.getMavenSession(), null );
+ filterRequest.setEscapeString( escapeString );
filterRequest.setInjectProjectBuildFilters( true );
configSource.getMavenFileFilter().copyFile( filterRequest );
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=1401670&r1=1401669&r2=1401670&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 Wed Oct 24 13:28:11 2012
@@ -64,6 +64,15 @@ public abstract class AbstractAssemblyMo
protected String encoding;
/**
+ * Expressions preceded with this String won't be interpolated.
+ * If you use "\" as the escape string then \${foo} will be replaced with ${foo}.
+ *
+ * @since 2.4
+ */
+ @Parameter( property = "assembly.escapeString" )
+ protected String escapeString;
+
+ /**
* 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.
*/
@@ -840,10 +849,14 @@ public abstract class AbstractAssemblyMo
}
public String getEncoding() {
- return encoding;
+ return encoding;
}
protected boolean isRecompressZippedFiles() {
return recompressZippedFiles;
}
+
+ public String getEscapeString() {
+ return escapeString;
+ }
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java Wed Oct 24 13:28:11 2012
@@ -382,6 +382,9 @@ public class FileFormatterTest
configSource.getTemporaryRootDirectory();
configSourceControl.setReturnValue( basedir );
+ configSource.getEscapeString();
+ configSourceControl.setReturnValue( null, MockControl.ONE_OR_MORE );
+
configSource.getProject();
configSourceControl.setReturnValue( project, MockControl.ONE_OR_MORE );
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java?rev=1401670&r1=1401669&r2=1401670&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java Wed Oct 24 13:28:11 2012
@@ -356,6 +356,9 @@ public class FileSetFormatterTest
configSource.getEncoding();
configSourceControl.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
+
+ configSource.getEscapeString();
+ configSourceControl.setReturnValue( null, MockControl.ONE_OR_MORE );
}
}
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=1401670&r1=1401669&r2=1401670&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 Wed Oct 24 13:28:11 2012
@@ -203,7 +203,10 @@ public class ConfigSourceStub
}
public String getEncoding() {
- return null;
+ return null;
}
+ public String getEscapeString() {
+ return null;
+ }
}