You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2007/01/01 05:08:07 UTC
svn commit: r491529 - in /maven/components/trunk:
maven-cli/src/main/java/org/apache/maven/cli/
maven-core/src/main/java/org/apache/maven/execution/
maven-embedder/src/main/java/org/apache/maven/embedder/
maven-embedder/src/test/embedder-test-project/ ...
Author: jvanzyl
Date: Sun Dec 31 20:08:06 2006
New Revision: 491529
URL: http://svn.apache.org/viewvc?view=rev&rev=491529
Log:
MNG-1385 You can now activate a profile using the embedder.
Modified:
maven/components/trunk/maven-cli/src/main/java/org/apache/maven/cli/MavenCli.java
maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
maven/components/trunk/maven-embedder/src/test/embedder-test-project/pom.xml
maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java
Modified: maven/components/trunk/maven-cli/src/main/java/org/apache/maven/cli/MavenCli.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-cli/src/main/java/org/apache/maven/cli/MavenCli.java?view=diff&rev=491529&r1=491528&r2=491529
==============================================================================
--- maven/components/trunk/maven-cli/src/main/java/org/apache/maven/cli/MavenCli.java (original)
+++ maven/components/trunk/maven-cli/src/main/java/org/apache/maven/cli/MavenCli.java Sun Dec 31 20:08:06 2006
@@ -293,11 +293,6 @@
alternatePomFile = commandLine.getOptionValue( CLIManager.ALTERNATE_POM_FILE );
}
- // We have a general problem with plexus components that are singletons in that they use
- // the same logger for their lifespan. This is not good in that many requests may be fired
- // off and the singleton plexus component will continue to funnel their output to the same
- // logger. We need to be able to swap the logger.
-
int loggingLevel;
if ( debug )
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java?view=diff&rev=491529&r1=491528&r2=491529
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/execution/MavenExecutionRequest.java Sun Dec 31 20:08:06 2006
@@ -163,6 +163,7 @@
MavenExecutionRequest addActiveProfile( String profile );
MavenExecutionRequest addActiveProfiles( List profiles );
List getActiveProfiles();
+ //MAPI: do we really need to do this? deactivate active profile? seems confusing.
MavenExecutionRequest addInactiveProfile( String profile );
MavenExecutionRequest addInactiveProfiles( List profiles );
List getInactiveProfiles();
Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java?view=diff&rev=491529&r1=491528&r2=491529
==============================================================================
--- maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java (original)
+++ maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java Sun Dec 31 20:08:06 2006
@@ -447,7 +447,9 @@
if ( logger != null )
{
- container.setLoggerManager( new MavenEmbedderLoggerManager( new PlexusLoggerAdapter( logger ) ) );
+ MavenEmbedderLoggerManager loggerManager = new MavenEmbedderLoggerManager( new PlexusLoggerAdapter( logger ) );
+
+ container.setLoggerManager( loggerManager );
}
try
Modified: maven/components/trunk/maven-embedder/src/test/embedder-test-project/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/embedder-test-project/pom.xml?view=diff&rev=491529&r1=491528&r2=491529
==============================================================================
--- maven/components/trunk/maven-embedder/src/test/embedder-test-project/pom.xml (original)
+++ maven/components/trunk/maven-embedder/src/test/embedder-test-project/pom.xml Sun Dec 31 20:08:06 2006
@@ -15,4 +15,14 @@
<scope>test</scope>
</dependency>
</dependencies>
+ <profiles>
+ <profile>
+ <id>embedderProfile</id>
+ <properties>
+ <embedderProfile>true</embedderProfile>
+ <name>jason</name>
+ <occupation>somnambulance</occupation>
+ </properties>
+ </profile>
+ </profiles>
</project>
Modified: maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java?view=diff&rev=491529&r1=491528&r2=491529
==============================================================================
--- maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java (original)
+++ maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java Sun Dec 31 20:08:06 2006
@@ -52,7 +52,7 @@
// Goal/Phase execution tests
// ----------------------------------------------------------------------
- public void testSimplePhaseExecutionUsingABaseDirectory()
+ public void testExecutionUsingABaseDirectory()
throws Exception
{
File testDirectory = new File( basedir, "src/test/embedder-test-project" );
@@ -76,7 +76,7 @@
assertTrue( jar.exists() );
}
- public void testSimplePhaseExecutionUsingAPomFile()
+ public void testExecutionUsingAPomFile()
throws Exception
{
File testDirectory = new File( basedir, "src/test/embedder-test-project" );
@@ -99,6 +99,50 @@
assertTrue( jar.exists() );
}
+
+ public void testExecutionUsingAProfileWhichSetsAProperty()
+ throws Exception
+ {
+ File testDirectory = new File( basedir, "src/test/embedder-test-project" );
+
+ File targetDirectory = new File( basedir, "target/embedder-test-project2" );
+
+ FileUtils.copyDirectoryStructure( testDirectory, targetDirectory );
+
+ // Check with profile not active
+
+ MavenExecutionRequest requestWithoutProfile = new DefaultMavenExecutionRequest()
+ .setPomFile( new File( targetDirectory, "pom.xml" ).getAbsolutePath() )
+ .setGoals( Arrays.asList( new String[]{ "validate" } ) );
+
+ MavenExecutionResult r0 = maven.execute( requestWithoutProfile );
+
+ MavenProject p0 = r0.getMavenProject();
+
+ assertNull( p0.getProperties().getProperty( "embedderProfile" ) );
+
+ assertNull( p0.getProperties().getProperty( "name" ) );
+
+ assertNull( p0.getProperties().getProperty( "occupation" ) );
+
+ // Check with profile activated
+
+ MavenExecutionRequest request = new DefaultMavenExecutionRequest()
+ .setPomFile( new File( targetDirectory, "pom.xml" ).getAbsolutePath() )
+ .setGoals( Arrays.asList( new String[]{ "validate" } ) )
+ .addActiveProfile( "embedderProfile" );
+
+ MavenExecutionResult r1 = maven.execute( request );
+
+ MavenProject p1 = r1.getMavenProject();
+
+ assertEquals( "true", p1.getProperties().getProperty( "embedderProfile" ) );
+
+ assertEquals( "jason", p1.getProperties().getProperty( "name" ) );
+
+ assertEquals( "somnambulance", p1.getProperties().getProperty( "occupation" ) );
+ }
+
// ----------------------------------------------------------------------
// Test mock plugin metadata