You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by si...@apache.org on 2008/11/21 06:54:01 UTC
svn commit: r719487 -
/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomTransformer.java
Author: sisbell
Date: Thu Nov 20 21:54:01 2008
New Revision: 719487
URL: http://svn.apache.org/viewvc?rev=719487&view=rev
Log:
Added in listeners to PomTransformers. Fixed a couple of rules.
Modified:
maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomTransformer.java
Modified: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomTransformer.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomTransformer.java?rev=719487&r1=719486&r2=719487&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomTransformer.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomTransformer.java Thu Nov 20 21:54:01 2008
@@ -99,6 +99,8 @@
ProjectUri.Repositories.xUri) ));
+ private static Map<String, List<ModelProperty>> cache = new HashMap<String, List<ModelProperty>>();
+
/**
* @see ModelTransformer#transformToDomainModel(java.util.List, java.util.List)
*/
@@ -110,6 +112,15 @@
throw new IllegalArgumentException( "properties: null" );
}
+ if( eventListeners == null )
+ {
+ eventListeners = new ArrayList<ModelEventListener>();
+ }
+ else
+ {
+ eventListeners = new ArrayList<ModelEventListener>(eventListeners);
+ }
+
List<ModelProperty> props = new ArrayList<ModelProperty>( properties );
//dependency management
@@ -185,7 +196,7 @@
{
ModelDataSource executionSource = new DefaultModelDataSource();
executionSource.init( pluginContainer.getProperties(),
- Arrays.asList( new ArtifactModelContainerFactory(), new IdModelContainerFactory() ) );
+ Arrays.asList( new ArtifactModelContainerFactory(), new PluginExecutionIdModelContainerFactory() ) );
List<ModelContainer> executionContainers =
executionSource.queryFor( ProjectUri.Build.Plugins.Plugin.Executions.Execution.xUri );
if ( executionContainers.size() < 2 )
@@ -208,6 +219,16 @@
}
}
props.removeAll( removeProperties );
+ for(ModelEventListener listener : eventListeners)
+ {
+ ModelDataSource ds = new DefaultModelDataSource();
+ ds.init( props, listener.getModelContainerFactories() );
+ for(String uri : listener.getUris() )
+ {
+ listener.fire(ds.queryFor(uri));
+ }
+ }
+
return factory.createDomainModel( props );
}
@@ -276,7 +297,7 @@
{
List<ModelProperty> removeProperties = new ArrayList<ModelProperty>();
ModelDataSource source = new DefaultModelDataSource();
- source.init( tmp, Arrays.asList( new ArtifactModelContainerFactory(), new IdModelContainerFactory() ) );
+ source.init( tmp, Arrays.asList( new ArtifactModelContainerFactory(), new PluginExecutionIdModelContainerFactory() ) );
List<ModelContainer> containers =
source.queryFor( ProjectUri.Build.Plugins.Plugin.Executions.Execution.xUri );
for ( ModelContainer container : containers )