Author: sisbell Date: Thu Apr 16 22:59:12 2009 New Revision: 765796 URL: http://svn.apache.org/viewvc?rev=765796&view=rev Log: Default interpolator annotated.
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java maven/components/trunk/maven-project-builder/pom.xml maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DefaultInterpolator.java maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java?rev=765796&r1=765795&r2=765796&view=diff ============================================================================== --- maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java (original) +++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/DefaultPluginManager.java Thu Apr 16 22:59:12 2009 @@ -73,11 +73,9 @@ import org.apache.maven.project.ProjectBuildingException; import org.apache.maven.project.artifact.InvalidDependencyVersionException; import org.apache.maven.project.builder.DefaultInterpolator; +import org.apache.maven.project.builder.Interpolator; import org.apache.maven.project.builder.InterpolatorProperty; -import org.apache.maven.project.builder.ModelProperty; import org.apache.maven.project.builder.PomInterpolatorTag; -import org.apache.maven.project.builder.ProcessorContext; -import org.apache.maven.project.builder.ProjectUri; import org.apache.maven.project.path.PathTranslator; import org.apache.maven.realm.MavenRealmManager; import org.apache.maven.realm.RealmManagementException; @@ -153,6 +151,9 @@ @Requirement protected RepositoryMetadataManager repositoryMetadataManager; + @Requirement + protected Interpolator interpolator; + private Map pluginDefinitionsByPrefix = new HashMap(); public DefaultPluginManager() @@ -511,7 +512,7 @@ PomInterpolatorTag.EXECUTION_PROPERTIES.name() ) ); interpolatorProperties .addAll( InterpolatorProperty.toInterpolatorProperties( session.getProjectBuilderConfiguration().getUserProperties(), PomInterpolatorTag.USER_PROPERTIES.name() ) ); - String interpolatedDom = new DefaultInterpolator().interpolateXmlString( String.valueOf( dom ), interpolatorProperties ); + String interpolatedDom = interpolator.interpolateXmlString( String.valueOf( dom ), interpolatorProperties ); dom = Xpp3DomBuilder.build( new StringReader( interpolatedDom ) ); } catch ( XmlPullParserException e ) Modified: maven/components/trunk/maven-project-builder/pom.xml URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/pom.xml?rev=765796&r1=765795&r2=765796&view=diff ============================================================================== --- maven/components/trunk/maven-project-builder/pom.xml (original) +++ maven/components/trunk/maven-project-builder/pom.xml Thu Apr 16 22:59:12 2009 @@ -27,6 +27,10 @@ <artifactId>plexus-utils</artifactId> </dependency> <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-annotations</artifactId> + </dependency> + <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-model</artifactId> </dependency> @@ -45,6 +49,13 @@ <scope>test</scope> </dependency> </dependencies> - + <build> + <plugins> + <plugin> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + </plugin> + </plugins> + </build> </project> Modified: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DefaultInterpolator.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DefaultInterpolator.java?rev=765796&r1=765795&r2=765796&view=diff ============================================================================== --- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DefaultInterpolator.java (original) +++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DefaultInterpolator.java Thu Apr 16 22:59:12 2009 @@ -25,7 +25,9 @@ import org.apache.maven.model.Model; import org.apache.maven.model.Reporting; import org.apache.maven.model.Resource; +import org.codehaus.plexus.component.annotations.Component; +...@component(role=Interpolator.class) public class DefaultInterpolator implements Interpolator { public String interpolateXmlString(String xml, Modified: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java?rev=765796&r1=765795&r2=765796&view=diff ============================================================================== --- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java (original) +++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java Thu Apr 16 22:59:12 2009 @@ -40,6 +40,53 @@ public class ProcessorContext { + /** + * Parent domain models on bottom. + * + * @param domainModels + * @param listeners + * @return + * @throws IOException + */ + public static PomClassicDomainModel build( List<DomainModel> domainModels, List<ModelEventListener> listeners ) + throws IOException + { + PomClassicDomainModel child = null; + for ( DomainModel domainModel : domainModels ) + { + if(domainModel.isMostSpecialized()) + { + child = (PomClassicDomainModel) domainModel; + } + } + if(child == null) + { + throw new IOException("Could not find child model"); + } + + List<Processor> processors = + Arrays.<Processor> asList( new BuildProcessor( new ArrayList<Processor>() ), new ModuleProcessor(), + new PropertiesProcessor(), new ParentProcessor(), new OrganizationProcessor(), + new MailingListProcessor(), new IssueManagementProcessor(), + new CiManagementProcessor(), new ReportingProcessor(), + new RepositoriesProcessor(), new DistributionManagementProcessor(), + new LicensesProcessor(), new ScmProcessor(), new PrerequisitesProcessor(), + new ContributorsProcessor(), new DevelopersProcessor(), new ProfilesProcessor() ); + Model target = processModelsForInheritance( convertDomainModelsToMavenModels( domainModels ), processors ); + if(listeners != null) + { + for(ModelEventListener listener : listeners) + { + listener.fire(target); + } + } + PomClassicDomainModel domainModel = new PomClassicDomainModel( target, child.isMostSpecialized() ); + domainModel.setProjectDirectory(child.getProjectDirectory()); + domainModel.setParentFile(child.getParentFile()); + + return domainModel; + } + public static PomClassicDomainModel mergeProfilesIntoModel(Collection<Profile> profiles, PomClassicDomainModel domainModel) throws IOException { List<Model> profileModels = new ArrayList<Model>(); @@ -150,53 +197,6 @@ return models; } - - /** - * Parent domain models on bottom. - * - * @param domainModels - * @param listeners - * @return - * @throws IOException - */ - public static PomClassicDomainModel build( List<DomainModel> domainModels, List<ModelEventListener> listeners ) - throws IOException - { - PomClassicDomainModel child = null; - for ( DomainModel domainModel : domainModels ) - { - if(domainModel.isMostSpecialized()) - { - child = (PomClassicDomainModel) domainModel; - } - } - if(child == null) - { - throw new IOException("Could not find child model"); - } - - List<Processor> processors = - Arrays.<Processor> asList( new BuildProcessor( new ArrayList<Processor>() ), new ModuleProcessor(), - new PropertiesProcessor(), new ParentProcessor(), new OrganizationProcessor(), - new MailingListProcessor(), new IssueManagementProcessor(), - new CiManagementProcessor(), new ReportingProcessor(), - new RepositoriesProcessor(), new DistributionManagementProcessor(), - new LicensesProcessor(), new ScmProcessor(), new PrerequisitesProcessor(), - new ContributorsProcessor(), new DevelopersProcessor(), new ProfilesProcessor() ); - Model target = processModelsForInheritance( convertDomainModelsToMavenModels( domainModels ), processors ); - if(listeners != null) - { - for(ModelEventListener listener : listeners) - { - listener.fire(target); - } - } - PomClassicDomainModel domainModel = new PomClassicDomainModel( target, child.isMostSpecialized() ); - domainModel.setProjectDirectory(child.getProjectDirectory()); - domainModel.setParentFile(child.getParentFile()); - - return domainModel; - } private static Model processModelsForInheritance(List<Model> models, List<Processor> processors) { Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=765796&r1=765795&r2=765796&view=diff ============================================================================== --- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original) +++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Thu Apr 16 22:59:12 2009 @@ -45,6 +45,7 @@ import org.apache.maven.project.artifact.InvalidDependencyVersionException; import org.apache.maven.project.builder.DefaultInterpolator; import org.apache.maven.project.builder.DomainModel; +import org.apache.maven.project.builder.Interpolator; import org.apache.maven.project.builder.InterpolatorProperty; import org.apache.maven.project.builder.ModelEventListener; import org.apache.maven.project.builder.PomClassicDomainModel; @@ -85,6 +86,9 @@ List<ModelEventListener> listeners; @Requirement + private Interpolator interpolator; + + @Requirement private ResolutionErrorHandler resolutionErrorHandler; //DO NOT USE, it is here only for backward compatibility reasons. The existing @@ -387,20 +391,7 @@ try { - //List<ModelProperty> mps = domainModel.getModelProperties(); - model = new DefaultInterpolator().interpolateDomainModel( domainModel, interpolatorProperties ).getModel(); - /* - if ( domainModel.getProjectDirectory() != null ) - { - mps = ProcessorContext.alignPaths( mps, domainModel.getProjectDirectory() ); - } - File f = domainModel.getParentFile(); - domainModel = new PomClassicDomainModel( mps, false ); - domainModel.setParentFile(f); - - model = domainModel.getModel(); - */ - + model = interpolator.interpolateDomainModel( domainModel, interpolatorProperties ).getModel(); } catch ( IOException e ) {