You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by be...@apache.org on 2008/08/12 14:05:12 UTC
svn commit: r685126 - in /maven/plugins/trunk/maven-invoker-plugin/src:
main/java/org/apache/maven/plugin/invoker/
test/java/org/apache/maven/plugin/invoker/
Author: bentmann
Date: Tue Aug 12 05:05:11 2008
New Revision: 685126
URL: http://svn.apache.org/viewvc?rev=685126&view=rev
Log:
o Unified interpolation
Modified:
maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java
maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InterpolationTest.java
maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InvokerMojoTest.java
Modified: maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java?rev=685126&r1=685125&r2=685126&view=diff
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java (original)
+++ maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java Tue Aug 12 05:05:11 2008
@@ -1268,6 +1268,25 @@
}
/**
+ * Returns the map-based value source used to interpolate POMs and other stuff.
+ *
+ * @return The map-based value source for interpolation, never <code>null</code>.
+ */
+ private Map getInterpolationValueSource()
+ {
+ Properties props = new Properties();
+ if ( interpolationsProperties != null )
+ {
+ props.putAll( interpolationsProperties );
+ }
+ if ( settings.getLocalRepository() != null )
+ {
+ props.put( "localRepository", settings.getLocalRepository() );
+ }
+ return new CompositeMap( this.project, props );
+ }
+
+ /**
* Gets goal/profile names for the specified project, either directly from the plugin configuration or from an
* external token file.
*
@@ -1313,7 +1332,7 @@
BufferedReader reader = null;
try
{
- Map composite = new CompositeMap( this.project, this.interpolationsProperties );
+ Map composite = getInterpolationValueSource();
reader = new BufferedReader( new InterpolationFilterReader( newReader( tokenFile ), composite ) );
String line = null;
@@ -1382,21 +1401,12 @@
}
getLog().debug( "interpolate file to create interpolated in " + interpolatedFile.getPath() );
- if ( settings.getLocalRepository() != null )
- {
- if ( this.interpolationsProperties == null )
- {
- this.interpolationsProperties = new Properties();
- }
- this.interpolationsProperties.put( "localRepository", settings.getLocalRepository() );
- }
- Map composite = new CompositeMap( this.project, this.interpolationsProperties );
-
BufferedReader reader = null;
BufferedWriter writer = null;
try
{
// interpolation with token @...@
+ Map composite = getInterpolationValueSource();
reader =
new BufferedReader( new InterpolationFilterReader( ReaderFactory.newXmlReader( originalFile ),
composite, "@", "@" ) );
@@ -1453,9 +1463,8 @@
}
}
- Map filter = new CompositeMap( project, this.interpolationsProperties );
Interpolator interpolator = new RegexBasedInterpolator();
- interpolator.addValueSource( new MapBasedValueSource( filter ) );
+ interpolator.addValueSource( new MapBasedValueSource( getInterpolationValueSource() ) );
for ( Iterator it = props.keySet().iterator(); it.hasNext(); )
{
String key = (String) it.next();
Modified: maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InterpolationTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InterpolationTest.java?rev=685126&r1=685125&r2=685126&view=diff
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InterpolationTest.java (original)
+++ maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InterpolationTest.java Tue Aug 12 05:05:11 2008
@@ -132,6 +132,7 @@
InvokerMojo invokerMojo = new InvokerMojo();
setVariableValueToObject( invokerMojo, "project", buildMavenProjectStub() );
setVariableValueToObject( invokerMojo, "profilesFile", "profiles.txt" );
+ setVariableValueToObject( invokerMojo, "settings", new Settings() );
String dirPath = getBasedir() + File.separatorChar + "src" + File.separatorChar + "test" + File.separatorChar
+ "resources" + File.separatorChar + "unit" + File.separatorChar + "profiles-from-file";
List profiles = invokerMojo.getProfiles( new File( dirPath ) );
Modified: maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InvokerMojoTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InvokerMojoTest.java?rev=685126&r1=685125&r2=685126&view=diff
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InvokerMojoTest.java (original)
+++ maven/plugins/trunk/maven-invoker-plugin/src/test/java/org/apache/maven/plugin/invoker/InvokerMojoTest.java Tue Aug 12 05:05:11 2008
@@ -26,6 +26,7 @@
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
+import org.apache.maven.settings.Settings;
/**
* @author <a href="mailto:olamy@apache.org">olamy</a>
@@ -48,6 +49,7 @@
InvokerMojo invokerMojo = new InvokerMojo();
setVariableValueToObject( invokerMojo, "goalsFile", "goals.txt" );
setVariableValueToObject( invokerMojo, "project", project );
+ setVariableValueToObject( invokerMojo, "settings", new Settings() );
String dirPath = getBasedir() + "/src/test/resources/unit/goals-from-file/";
List goals = invokerMojo.getGoals( new File( dirPath ) );
assertEquals( 3, goals.size() );