Author: jdcasey
Date: Fri Aug 22 14:04:22 2008
New Revision: 688193
URL: http://svn.apache.org/viewvc?rev=688193&view=rev
Log:
streamlining the maintenance load for things using the concrete/dynamic
transition method(s) on MavenProjectBuilder. Calling calculate AND restore is
redundant, when restore should always run just ahead of the next concrete
transition attempt.
Modified:
maven/components/branches/maven-2.0.10-RC/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/MavenProjectBuilder.java
maven/components/branches/maven-2.0.10-RC/maven-project/src/test/java/org/apache/maven/project/MavenProjectDynamismTest.java
Modified:
maven/components/branches/maven-2.0.10-RC/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.10-RC/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java?rev=688193&r1=688192&r2=688193&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.10-RC/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
(original)
+++
maven/components/branches/maven-2.0.10-RC/maven-core/src/main/java/org/apache/maven/lifecycle/DefaultLifecycleExecutor.java
Fri Aug 22 14:04:22 2008
@@ -726,14 +726,14 @@
// }
// }
- if ( usesReactorProjects )
- {
- restoreAllDynamicStates( session );
- }
- else
- {
- restoreDynamicState( project, session, true );
- }
+// if ( usesReactorProjects )
+// {
+// restoreAllDynamicStates( session );
+// }
+// else
+// {
+// restoreDynamicState( project, session, true );
+// }
}
}
@@ -816,32 +816,33 @@
}
}
}
- private void restoreAllDynamicStates( MavenSession session )
- throws LifecycleExecutionException
- {
- List reactorProjects = session.getSortedProjects();
- if ( reactorProjects != null )
- {
- for ( Iterator it = reactorProjects.iterator(); it.hasNext(); )
- {
- MavenProject project = (MavenProject) it.next();
- restoreDynamicState( project, session, false );
- }
- }
- }
-
- private void restoreDynamicState( MavenProject project, MavenSession
session, boolean processReferences )
- throws LifecycleExecutionException
- {
- try
- {
- mavenProjectBuilder.restoreDynamicState( project,
session.getProjectBuilderConfiguration(), processReferences );
- }
- catch ( ModelInterpolationException e )
- {
- throw new LifecycleExecutionException( "Failed to restore dynamic
state for project: " + project, e );
- }
- }
+
+// private void restoreAllDynamicStates( MavenSession session )
+// throws LifecycleExecutionException
+// {
+// List reactorProjects = session.getSortedProjects();
+// if ( reactorProjects != null )
+// {
+// for ( Iterator it = reactorProjects.iterator(); it.hasNext(); )
+// {
+// MavenProject project = (MavenProject) it.next();
+// restoreDynamicState( project, session, false );
+// }
+// }
+// }
+//
+// private void restoreDynamicState( MavenProject project, MavenSession
session, boolean processReferences )
+// throws LifecycleExecutionException
+// {
+// try
+// {
+// mavenProjectBuilder.restoreDynamicState( project,
session.getProjectBuilderConfiguration(), processReferences );
+// }
+// catch ( ModelInterpolationException e )
+// {
+// throw new LifecycleExecutionException( "Failed to restore
dynamic state for project: " + project, e );
+// }
+// }
private List getReportExecutions( MavenProject project, Stack
forkEntryPoints, MojoExecution mojoExecution, MavenSession session )
throws LifecycleExecutionException, PluginNotFoundException
Modified:
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=688193&r1=688192&r2=688193&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
(original)
+++
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
Fri Aug 22 14:04:22 2008
@@ -1833,6 +1833,8 @@
private void calculateConcreteStateInternal( MavenProject project,
ProjectBuilderConfiguration config, boolean processProjectReferences, Set
processedProjects )
throws ModelInterpolationException
{
+ restoreDynamicState( project, config, false );
+
if ( !project.isConcrete() )
{
if ( project.getParent() != null )
Modified:
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/MavenProjectBuilder.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/MavenProjectBuilder.java?rev=688193&r1=688192&r2=688193&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/MavenProjectBuilder.java
(original)
+++
maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/MavenProjectBuilder.java
Fri Aug 22 14:04:22 2008
@@ -145,29 +145,29 @@
void calculateConcreteState( MavenProject project,
ProjectBuilderConfiguration config, boolean processReferences )
throws ModelInterpolationException;
- /**
- * Variant of [EMAIL PROTECTED]
MavenProjectBuilder#restoreDynamicState(MavenProject,
ProjectBuilderConfiguration, boolean)}
- * which assumes that project references should be processed. This is
provided for performance reasons, for cases
- * where you know all projects in the reactor will be processed, making
traversal of project references unnecessary.
- */
- void restoreDynamicState( MavenProject project,
ProjectBuilderConfiguration config )
- throws ModelInterpolationException;
-
- /**
- * In the event that a mojo execution has changed one or more build paths,
or changed the project properties,
- * this method can restore the build section of the POM to its
uninterpolated form, to allow reevaluation of
- * any expressions that may depend on this changed information. This
method will short-circuit if the project
- * is not in a concrete state (see [EMAIL PROTECTED]
MavenProjectBuilder#calculateConcreteState(MavenProject,
ProjectBuilderConfiguration, boolean)}
- * or if the properties and build paths of the project remain unchanged.
- * <br/><br/>
- * This method will process the following:
- * <ol>
- * <li>the specified project's parent project (if not null)</li>
- * <li>specified project</li>
- * <li>its execution project (if not null)</li>
- * <li>any project references (iff processReferences == true)</li>
- * </ol>
- */
- void restoreDynamicState( MavenProject project,
ProjectBuilderConfiguration config, boolean processReferences )
- throws ModelInterpolationException;
+// /**
+// * Variant of [EMAIL PROTECTED]
MavenProjectBuilder#restoreDynamicState(MavenProject,
ProjectBuilderConfiguration, boolean)}
+// * which assumes that project references should be processed. This is
provided for performance reasons, for cases
+// * where you know all projects in the reactor will be processed, making
traversal of project references unnecessary.
+// */
+// void restoreDynamicState( MavenProject project,
ProjectBuilderConfiguration config )
+// throws ModelInterpolationException;
+//
+// /**
+// * In the event that a mojo execution has changed one or more build
paths, or changed the project properties,
+// * this method can restore the build section of the POM to its
uninterpolated form, to allow reevaluation of
+// * any expressions that may depend on this changed information. This
method will short-circuit if the project
+// * is not in a concrete state (see [EMAIL PROTECTED]
MavenProjectBuilder#calculateConcreteState(MavenProject,
ProjectBuilderConfiguration, boolean)}
+// * or if the properties and build paths of the project remain unchanged.
+// * <br/><br/>
+// * This method will process the following:
+// * <ol>
+// * <li>the specified project's parent project (if not null)</li>
+// * <li>specified project</li>
+// * <li>its execution project (if not null)</li>
+// * <li>any project references (iff processReferences == true)</li>
+// * </ol>
+// */
+// void restoreDynamicState( MavenProject project,
ProjectBuilderConfiguration config, boolean processReferences )
+// throws ModelInterpolationException;
}
Modified:
maven/components/branches/maven-2.0.10-RC/maven-project/src/test/java/org/apache/maven/project/MavenProjectDynamismTest.java
URL:
http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.10-RC/maven-project/src/test/java/org/apache/maven/project/MavenProjectDynamismTest.java?rev=688193&r1=688192&r2=688193&view=diff
==============================================================================
---
maven/components/branches/maven-2.0.10-RC/maven-project/src/test/java/org/apache/maven/project/MavenProjectDynamismTest.java
(original)
+++
maven/components/branches/maven-2.0.10-RC/maven-project/src/test/java/org/apache/maven/project/MavenProjectDynamismTest.java
Fri Aug 22 14:04:22 2008
@@ -42,14 +42,14 @@
extends PlexusTestCase
{
- private MavenProjectBuilder projectBuilder;
+ private DefaultMavenProjectBuilder projectBuilder;
public void setUp()
throws Exception
{
super.setUp();
- projectBuilder = (MavenProjectBuilder) lookup(
MavenProjectBuilder.class.getName() );
+ projectBuilder = (DefaultMavenProjectBuilder) lookup(
MavenProjectBuilder.class.getName() );
}
public void testBuildSectionGroupIdInterpolation()