Author: jdcasey
Date: Mon Feb 25 11:29:03 2008
New Revision: 630965
URL: http://svn.apache.org/viewvc?rev=630965&view=rev
Log:
[MASSEMBLY-256] Adding support for 'project.' expressions in outputDirectory,
outputFileNameMapping, and outputDirectoryMapping.
Modified:
maven/plugins/trunk/maven-assembly-plugin/pom.xml
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/pom.xml?rev=630965&r1=630964&r2=630965&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/pom.xml Mon Feb 25 11:29:03 2008
@@ -434,7 +434,7 @@
<dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>maven-repository-builder</artifactId>
- <version>1.0-alpha-3-SNAPSHOT</version>
+ <version>1.0-alpha-2</version>
</dependency>
<dependency>
<groupId>org.apache.maven.shared</groupId>
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java?rev=630965&r1=630964&r2=630965&view=diff
==============================================================================
---
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
(original)
+++
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
Mon Feb 25 11:29:03 2008
@@ -111,6 +111,8 @@
destDirectory = fileSet.getDirectory();
}
+ destDirectory = AssemblyFormatUtils.getOutputDirectory( destDirectory,
configSource.getProject(), project, configSource.getFinalName(),
artifactExpressionPrefix );
+
if ( logger.isDebugEnabled() )
{
logger.debug( "FileSet[" + destDirectory + "]" + " dir perms: "
@@ -118,8 +120,6 @@
+ Integer.toString( archiver.getDefaultFileMode(), 8 )
+ ( fileSet.getLineEnding() == null ? "" : " lineEndings: " +
fileSet.getLineEnding() ) );
}
-
- destDirectory = AssemblyFormatUtils.getOutputDirectory( destDirectory,
configSource.getProject(), project, configSource.getFinalName(),
artifactExpressionPrefix );
logger.debug( "The archive base directory is '" + archiveBaseDir + "'"
);
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java?rev=630965&r1=630964&r2=630965&view=diff
==============================================================================
---
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
(original)
+++
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
Mon Feb 25 11:29:03 2008
@@ -133,6 +133,7 @@
if ( mainProject != null )
{
interpolator.addValueSource( new PrefixedObjectBasedValueSource(
"pom.", mainProject ) );
+ interpolator.addValueSource( new PrefixedObjectBasedValueSource(
"project.", mainProject ) );
}
if ( artifactProject != null )
@@ -152,6 +153,7 @@
// 6
interpolator.addValueSource( new
PropertiesInterpolationValueSource( mainProject.getProperties() ) );
interpolator.addValueSource( new
PrefixedPropertiesInterpolationValueSource( "pom.properties.",
mainProject.getProperties() ) );
+ interpolator.addValueSource( new
PrefixedPropertiesInterpolationValueSource( "project.properties.",
mainProject.getProperties() ) );
}
// 7
@@ -266,6 +268,7 @@
{
// 3
interpolator.addValueSource( new PrefixedObjectBasedValueSource(
"pom.", mainProject ) );
+ interpolator.addValueSource( new PrefixedObjectBasedValueSource(
"project.", mainProject ) );
// 4
interpolator.addValueSource( new ObjectBasedValueSource(
mainProject ) );
@@ -291,6 +294,7 @@
// 6
interpolator.addValueSource( new
PropertiesInterpolationValueSource( mainProject.getProperties() ) );
interpolator.addValueSource( new
PrefixedPropertiesInterpolationValueSource( "pom.properties.",
mainProject.getProperties() ) );
+ interpolator.addValueSource( new
PrefixedPropertiesInterpolationValueSource( "project.properties.",
mainProject.getProperties() ) );
}
// 7
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java?rev=630965&r1=630964&r2=630965&view=diff
==============================================================================
---
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
(original)
+++
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
Mon Feb 25 11:29:03 2008
@@ -122,6 +122,30 @@
verifyOutputDir( "${pom.build.finalName}", null, null, null, null,
"finalName", "finalName/", true );
}
+ public void
testGetOutputDir_ShouldResolveGroupIdInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${project.groupId}", null, "group", null, null,
null, "group/", true );
+ }
+
+ public void
testGetOutputDir_ShouldResolveArtifactIdInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${project.artifactId}", null, null, "artifact",
null, null, "artifact/", true );
+ }
+
+ public void
testGetOutputDir_ShouldResolveVersionInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${project.version}", null, null, null, "version",
null, "version/", true );
+ }
+
+ public void
testGetOutputDir_ShouldResolveBuildFinalNameInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyOutputDir( "${project.build.finalName}", null, null, null, null,
"finalName", "finalName/", true );
+ }
+
public void
testGetOutputDir_ShouldNotAlterOutDirWhenIncludeBaseFalseAndNoExpressions()
throws AssemblyFormattingException
{
@@ -284,6 +308,24 @@
throws AssemblyFormattingException
{
verifyEvalFileNameMapping( "${pom.version}", null, null, null,
"version", null, "version", true );
+ }
+
+ public void
testEvalFileNameMapping_ShouldResolveGroupIdInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${project.groupId}", null, "group", null,
null, null, "group", true );
+ }
+
+ public void
testEvalFileNameMapping_ShouldResolveArtifactIdInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${project.artifactId}", null, null,
"artifact", null, null, "artifact", true );
+ }
+
+ public void
testEvalFileNameMapping_ShouldResolveVersionInOutDir_UseExplicitMainProject_projectRef()
+ throws AssemblyFormattingException
+ {
+ verifyEvalFileNameMapping( "${project.version}", null, null, null,
"version", null, "version", true );
}
public void testEvalFileNameMapping_ShouldPassExpressionThroughUnchanged()
throws AssemblyFormattingException