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 2009/04/13 21:14:46 UTC
svn commit: r764568 [2/5] - in /maven/components/trunk:
maven-core/src/main/java/org/apache/maven/plugin/
maven-core/src/test/java/org/apache/maven/project/harness/
maven-mercury/src/main/java/org/apache/maven/mercury/
maven-mercury/src/main/java/org/a...
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DevelopersProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DevelopersProcessor.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DevelopersProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/DevelopersProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DistributionManagementProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DistributionManagementProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DistributionManagementProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DistributionManagementProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DistributionManagementProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/DistributionManagementProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/DistributionManagementProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/IssueManagementProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/IssueManagementProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/IssueManagementProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/IssueManagementProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/IssueManagementProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/IssueManagementProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/IssueManagementProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/LicensesProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/LicensesProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/LicensesProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/LicensesProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/LicensesProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/LicensesProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/LicensesProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/MailingListProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/MailingListProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/MailingListProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/MailingListProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/MailingListProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/MailingListProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/MailingListProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelListener.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModelListener.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelListener.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelListener.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModelListener.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModelListener.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelListener.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelListener.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelListener.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModelProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModelProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModelProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModelProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModelProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModuleProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModuleProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModuleProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModuleProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModuleProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ModuleProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ModuleProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/OrganizationProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/OrganizationProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/OrganizationProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/OrganizationProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/OrganizationProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/OrganizationProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/OrganizationProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ParentProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ParentProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ParentProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ParentProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ParentProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ParentProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ParentProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ParentProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ParentProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ParentProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsManagementProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsManagementProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsManagementProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsManagementProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsManagementProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsManagementProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsManagementProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PluginsProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PluginsProcessor.java:688587-696625,696644-699681
Modified: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java?rev=764568&r1=764567&r2=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PomClassicDomainModel.java Mon Apr 13 19:14:44 2009
@@ -1,47 +1,38 @@
package org.apache.maven.project.builder;
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import org.apache.maven.model.Model;
-import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
-import org.apache.maven.shared.model.ModelProperty;
-import org.apache.maven.shared.model.ModelMarshaller;
-import org.apache.maven.shared.model.InputStreamDomainModel;
-import org.codehaus.plexus.util.IOUtil;
-import org.codehaus.plexus.util.ReaderFactory;
-import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
-
import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
-import java.util.List;
+import java.io.Writer;
import java.util.ArrayList;
-import java.util.Set;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamConstants;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
-/**
- * Provides a wrapper for the maven model.
- */
-public class PomClassicDomainModel implements InputStreamDomainModel
+import org.apache.maven.model.Model;
+import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
+import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
+import org.apache.maven.project.builder.interpolator.DomainModel;
+import org.apache.maven.project.builder.interpolator.ModelProperty;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.ReaderFactory;
+import org.codehaus.plexus.util.WriterFactory;
+import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
+
+public class PomClassicDomainModel implements DomainModel
{
/**
@@ -49,11 +40,6 @@
*/
private byte[] inputBytes;
- /**
- * History of joins and deletes of model properties
- */
- private String eventHistory;
-
private String id;
private File file;
@@ -74,74 +60,8 @@
public Model getModel() throws IOException
{
- if(model == null)
- {
- InputStream is;
- try {
- is = getInputStream();
- } catch (Exception e1) {
- throw new IOException("inputStream not set");
- }
-
- MavenXpp3Reader reader = new MavenXpp3Reader();
- try
- {
- model = reader.read( is, false ) ;
- }
- catch ( XmlPullParserException e )
- {
- throw new IOException( e.getMessage() );
- }
- }
return model;
}
-
- public PomClassicDomainModel( List<ModelProperty> modelProperties )
- {
- this.modelProperties = modelProperties;
- try
- {
- String xml = ModelMarshaller.unmarshalModelPropertiesToXml( modelProperties, ProjectUri.baseUri );
- inputBytes = xml.getBytes( "UTF-8" );
- }
- catch ( IOException e )
- {
- throw new IllegalStateException( "Unmarshalling of model properties failed", e );
- }
- initializeProperties( modelProperties );
- }
-
- public PomClassicDomainModel( List<ModelProperty> modelProperties, boolean isMostSpecialized )
- {
- this( modelProperties );
- this.isMostSpecialized = isMostSpecialized;
- }
-
-
- /**
- * Constructor
- *
- * @param inputStream input stream of the maven model
- * @throws IOException if there is a problem constructing the model
- */
- public PomClassicDomainModel( InputStream inputStream )
- throws IOException
- {
- if ( inputStream == null )
- {
- throw new IllegalArgumentException( "inputStream: null" );
- }
- this.inputBytes = IOUtil.toByteArray( inputStream );
- modelProperties = getModelProperties();
- initializeProperties( modelProperties );
- }
-
- public PomClassicDomainModel( InputStream inputStream, boolean isMostSpecialized )
- throws IOException
- {
- this( inputStream );
- this.isMostSpecialized = isMostSpecialized;
- }
private void initializeProperties(List<ModelProperty> modelProperties)
{
@@ -212,17 +132,54 @@
public PomClassicDomainModel( File file )
throws IOException
{
- this( new FileInputStream( file ) );
+ this( new FileInputStream( file ) );
this.file = file;
}
+
+ public PomClassicDomainModel( InputStream is )
+ throws IOException
+ {
+ this.inputBytes = IOUtil.toByteArray( is);
+
+ MavenXpp3Reader reader = new MavenXpp3Reader();
+ try
+ {
+ model = reader.read( new ByteArrayInputStream( inputBytes ), false ) ;
+ }
+ catch ( XmlPullParserException e )
+ {
+ throw new IOException( e.getMessage() );
+ }
+
+ modelProperties = getModelProperties();
+ initializeProperties( modelProperties );
+
+ }
- public PomClassicDomainModel(Model model2) {
- this.model = model2;
+ public PomClassicDomainModel(Model model) throws IOException {
+ this (model, false);
}
- public PomClassicDomainModel(Model model2, boolean b) {
- this.model = model2;
+ public PomClassicDomainModel(Model model, boolean b) throws IOException {
+ this.model = model;
this.isMostSpecialized = b;
+
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ Writer out = null;
+ MavenXpp3Writer writer = new MavenXpp3Writer();
+ try
+ {
+ out = WriterFactory.newXmlWriter( baos );
+ writer.write( out, model );
+ }
+ finally
+ {
+ if ( out != null )
+ {
+ out.close();
+ }
+ }
+ inputBytes = baos.toByteArray();
}
public File getParentFile()
@@ -318,7 +275,6 @@
{
byte[] copy = new byte[inputBytes.length];
System.arraycopy( inputBytes, 0, copy, 0, inputBytes.length );
- //System.out.println(new String(copy));
return new ByteArrayInputStream( copy );
}
@@ -336,7 +292,7 @@
{
Set<String> s = new HashSet<String>();
//TODO: Should add all collections from ProjectUri
- s.addAll(PomTransformer.URIS);
+ s.addAll(URIS);
s.add(ProjectUri.Build.PluginManagement.Plugins.Plugin.Executions.xUri);
s.add(ProjectUri.DependencyManagement.Dependencies.Dependency.Exclusions.xUri);
s.add(ProjectUri.Dependencies.Dependency.Exclusions.xUri);
@@ -359,32 +315,11 @@
s.add(ProjectUri.Profiles.Profile.Dependencies.xUri);
s.add(ProjectUri.Profiles.Profile.Build.Plugins.Plugin.configuration);
- modelProperties = ModelMarshaller.marshallXmlToModelProperties(
- getInputStream(), ProjectUri.baseUri, s );
+ modelProperties = marshallXmlToModelProperties(getInputStream(), ProjectUri.baseUri, s );
}
return new ArrayList<ModelProperty>(modelProperties);
}
- /**
- * @see org.apache.maven.shared.model.DomainModel#getEventHistory()
- */
- public String getEventHistory()
- {
- return eventHistory;
- }
-
- /**
- * @see org.apache.maven.shared.model.DomainModel#setEventHistory(String)
- */
- public void setEventHistory( String eventHistory )
- {
- if ( eventHistory == null )
- {
- throw new IllegalArgumentException( "eventHistory: null" );
- }
- this.eventHistory = eventHistory;
- }
-
public int getLineageCount()
{
return lineageCount;
@@ -395,17 +330,6 @@
this.lineageCount = lineageCount;
}
- public PomClassicDomainModel createCopy()
- {
- List<ModelProperty> props = new ArrayList<ModelProperty>();
- for(ModelProperty mp : modelProperties)
- {
- props.add(mp.createCopyOfOriginal());
- }
-
- return new PomClassicDomainModel(props);
- }
-
/**
* Returns true if this.asString.equals(o.asString()), otherwise false.
*
@@ -436,5 +360,223 @@
{
return String.valueOf( id );
}
+
+ private static final Set<String> URIS = Collections.unmodifiableSet(new HashSet<String>( Arrays.asList( ProjectUri.Build.Extensions.xUri,
+ ProjectUri.Build.PluginManagement.Plugins.xUri,
+ ProjectUri.Build.PluginManagement.Plugins.Plugin.configuration,
+ ProjectUri.Build.PluginManagement.Plugins.Plugin.Executions.xUri,
+ ProjectUri.Build.PluginManagement.Plugins.Plugin.Executions.Execution.Goals.xURI,
+ ProjectUri.Build.PluginManagement.Plugins.Plugin.Dependencies.xUri,
+ ProjectUri.Build.PluginManagement.Plugins.Plugin.Dependencies.Dependency.Exclusions.xUri,
+ ProjectUri.Build.Plugins.xUri,
+ ProjectUri.properties,
+ ProjectUri.Build.Plugins.Plugin.configuration,
+ ProjectUri.Reporting.Plugins.xUri,
+ ProjectUri.Reporting.Plugins.Plugin.configuration,
+ ProjectUri.Build.Plugins.Plugin.Dependencies.xUri,
+ ProjectUri.Build.Resources.xUri,
+ ProjectUri.Build.Resources.Resource.includes,
+ ProjectUri.Build.Resources.Resource.excludes,
+ ProjectUri.Build.TestResources.xUri,
+ ProjectUri.Build.Filters.xUri,
+ ProjectUri.CiManagement.Notifiers.xUri,
+ ProjectUri.Contributors.xUri,
+ ProjectUri.Dependencies.xUri,
+ ProjectUri.DependencyManagement.Dependencies.xUri,
+ ProjectUri.Developers.xUri,
+ ProjectUri.Developers.Developer.roles,
+ ProjectUri.Licenses.xUri,
+ ProjectUri.MailingLists.xUri,
+ ProjectUri.Modules.xUri,
+ ProjectUri.PluginRepositories.xUri,
+ ProjectUri.Profiles.xUri,
+ ProjectUri.Profiles.Profile.Build.Plugins.xUri,
+ ProjectUri.Profiles.Profile.Build.Plugins.Plugin.Dependencies.xUri,
+ ProjectUri.Profiles.Profile.Build.Plugins.Plugin.Executions.xUri,
+ ProjectUri.Profiles.Profile.Build.Resources.xUri,
+ ProjectUri.Profiles.Profile.Build.TestResources.xUri,
+ ProjectUri.Profiles.Profile.Dependencies.xUri,
+ ProjectUri.Profiles.Profile.DependencyManagement.Dependencies.xUri,
+ ProjectUri.Profiles.Profile.PluginRepositories.xUri,
+ ProjectUri.Profiles.Profile.Reporting.Plugins.xUri,
+ ProjectUri.Profiles.Profile.Repositories.xUri,
+ ProjectUri.Profiles.Profile.Build.PluginManagement.Plugins.xUri,
+ ProjectUri.Profiles.Profile.Build.PluginManagement.Plugins.Plugin.Dependencies.xUri,
+ ProjectUri.Reporting.Plugins.xUri,
+ ProjectUri.Repositories.xUri) ));
+
+ /**
+ * Returns list of model properties transformed from the specified input stream.
+ *
+ * @param inputStream input stream containing the xml document. May not be null.
+ * @param baseUri the base uri of every model property. May not be null or empty.
+ * @param collections set of uris that are to be treated as a collection (multiple entries). May be null.
+ * @return list of model properties transformed from the specified input stream.
+ * @throws IOException if there was a problem doing the transform
+ */
+ public static List<ModelProperty> marshallXmlToModelProperties( InputStream inputStream, String baseUri,
+ Set<String> collections )
+ throws IOException {
+ if (inputStream == null) {
+ throw new IllegalArgumentException("inputStream: null");
+ }
+
+ if (baseUri == null || baseUri.trim().length() == 0) {
+ throw new IllegalArgumentException("baseUri: null");
+ }
+
+ if (collections == null) {
+ collections = Collections.emptySet();
+ }
+
+ List<ModelProperty> modelProperties = new ArrayList<ModelProperty>();
+ XMLInputFactory xmlInputFactory = new com.ctc.wstx.stax.WstxInputFactory();
+ xmlInputFactory.setProperty(
+ XMLInputFactory.IS_REPLACING_ENTITY_REFERENCES, Boolean.FALSE);
+ xmlInputFactory.setProperty(XMLInputFactory.IS_NAMESPACE_AWARE,
+ Boolean.FALSE);
+
+ Uri uri = new Uri(baseUri);
+ String tagName = baseUri;
+ StringBuilder tagValue = new StringBuilder(256);
+
+ int depth = 0;
+ int depthOfTagValue = depth;
+ XMLStreamReader xmlStreamReader = null;
+ try {
+ xmlStreamReader = xmlInputFactory
+ .createXMLStreamReader(inputStream);
+
+ Map<String, String> attributes = new HashMap<String, String>();
+ for (;; xmlStreamReader.next()) {
+ int type = xmlStreamReader.getEventType();
+ switch (type) {
+
+ case XMLStreamConstants.CDATA:
+ case XMLStreamConstants.CHARACTERS: {
+ if (depth == depthOfTagValue) {
+ tagValue.append(xmlStreamReader.getTextCharacters(),
+ xmlStreamReader.getTextStart(), xmlStreamReader
+ .getTextLength());
+ }
+ break;
+ }
+
+ case XMLStreamConstants.START_ELEMENT: {
+ if (!tagName.equals(baseUri)) {
+ String value = null;
+ if (depth < depthOfTagValue) {
+ value = tagValue.toString().trim();
+ }
+ modelProperties.add(new ModelProperty(tagName, value));
+ if (!attributes.isEmpty()) {
+ for (Map.Entry<String, String> e : attributes
+ .entrySet()) {
+ modelProperties.add(new ModelProperty(e
+ .getKey(), e.getValue()));
+ }
+ attributes.clear();
+ }
+ }
+
+ depth++;
+ tagName = uri.getUriFor(xmlStreamReader.getName()
+ .getLocalPart(), depth);
+ if (collections.contains(tagName + "#collection")) {
+ tagName = tagName + "#collection";
+ uri.addTag(xmlStreamReader.getName().getLocalPart()
+ + "#collection");
+ } else if (collections.contains(tagName + "#set")) {
+ tagName = tagName + "#set";
+ uri.addTag(xmlStreamReader.getName().getLocalPart()
+ + "#set");
+ } else {
+ uri.addTag(xmlStreamReader.getName().getLocalPart());
+ }
+ tagValue.setLength(0);
+ depthOfTagValue = depth;
+ }
+ case XMLStreamConstants.ATTRIBUTE: {
+ for (int i = 0; i < xmlStreamReader.getAttributeCount(); i++) {
+
+ attributes.put(tagName
+ + "#property/"
+ + xmlStreamReader.getAttributeName(i)
+ .getLocalPart(), xmlStreamReader
+ .getAttributeValue(i));
+ }
+ break;
+ }
+ case XMLStreamConstants.END_ELEMENT: {
+ depth--;
+ break;
+ }
+ case XMLStreamConstants.END_DOCUMENT: {
+ modelProperties.add(new ModelProperty(tagName, tagValue
+ .toString().trim()));
+ if (!attributes.isEmpty()) {
+ for (Map.Entry<String, String> e : attributes
+ .entrySet()) {
+ modelProperties.add(new ModelProperty(e.getKey(), e
+ .getValue()));
+ }
+ attributes.clear();
+ }
+ return modelProperties;
+ }
+ }
+ }
+ } catch (XMLStreamException e) {
+ throw new IOException(":" + e.toString());
+ } finally {
+ if (xmlStreamReader != null) {
+ try {
+ xmlStreamReader.close();
+ } catch (XMLStreamException e) {
+ e.printStackTrace();
+ }
+ }
+ try {
+ inputStream.close();
+ } catch (IOException e) {
+ }
+ }
+ }
+ /**
+ * Class for storing information about URIs.
+ */
+ private static class Uri
+ {
+
+ List<String> uris;
+
+ Uri( String baseUri )
+ {
+ uris = new LinkedList<String>();
+ uris.add( baseUri );
+ }
+
+ String getUriFor( String tag, int depth )
+ {
+ setUrisToDepth( depth );
+ StringBuffer sb = new StringBuffer();
+ for ( String tagName : uris )
+ {
+ sb.append( tagName ).append( "/" );
+ }
+ sb.append( tag );
+ return sb.toString();
+ }
+
+ void addTag( String tag )
+ {
+ uris.add( tag );
+ }
+
+ void setUrisToDepth( int depth )
+ {
+ uris = new LinkedList<String>( uris.subList( 0, depth ) );
+ }
+ }
}
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PrerequisitesProcessor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PrerequisitesProcessor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PrerequisitesProcessor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PrerequisitesProcessor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PrerequisitesProcessor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/PrerequisitesProcessor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/PrerequisitesProcessor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/Processor.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/Processor.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/Processor.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/Processor.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/Processor.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/Processor.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/Processor.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
import java.util.List;
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/Processor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/Processor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/Processor.java:688587-696625,696644-699681
Copied: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java (from r764415, maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ProcessorContext.java)
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java?p2=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java&p1=maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ProcessorContext.java&r1=764415&r2=764568&rev=764568&view=diff
==============================================================================
--- maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/processor/ProcessorContext.java (original)
+++ maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java Mon Apr 13 19:14:44 2009
@@ -1,4 +1,4 @@
-package org.apache.maven.project.processor;
+package org.apache.maven.project.builder;
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -32,6 +32,7 @@
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
@@ -47,13 +48,12 @@
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.model.io.xpp3.MavenXpp3Writer;
import org.apache.maven.project.builder.PomClassicDomainModel;
-import org.apache.maven.project.builder.PomInterpolatorTag;
import org.apache.maven.project.builder.ProjectUri;
-import org.apache.maven.shared.model.DomainModel;
-import org.apache.maven.shared.model.InterpolatorProperty;
+import org.apache.maven.project.builder.interpolator.DomainModel;
+import org.apache.maven.project.builder.interpolator.InterpolatorProperty;
+import org.apache.maven.project.builder.interpolator.ModelProperty;
+import org.apache.maven.project.builder.interpolator.PomInterpolatorTag;
import org.apache.maven.shared.model.ModelEventListener;
-import org.apache.maven.shared.model.ModelProperty;
-import org.apache.maven.shared.model.ModelTransformerContext;
import org.codehaus.plexus.util.WriterFactory;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
@@ -136,7 +136,7 @@
//TODO: Merge Dependency Management
target.setDependencyManagement( depMng );
- PomClassicDomainModel targetModel = convertToDomainModel( target, domainModel.isMostSpecialized());
+ PomClassicDomainModel targetModel = new PomClassicDomainModel( target, domainModel.isMostSpecialized());
targetModel.setParentFile(domainModel.getParentFile());
targetModel.setProjectDirectory(domainModel.getProjectDirectory());
return targetModel;
@@ -179,18 +179,9 @@
}
}
- else {
- InputStream is = ( (PomClassicDomainModel) domainModel ).getInputStream();
- MavenXpp3Reader reader = new MavenXpp3Reader();
- try
- {
- models.add( reader.read( is ) );
- }
- catch ( XmlPullParserException e )
- {
- e.printStackTrace();
- throw new IOException( e.getMessage() );
- }
+ else
+ {
+ throw new IOException( "model: null" );
}
}
@@ -225,7 +216,7 @@
new ContributorsProcessor(), new DevelopersProcessor(), new ProfilesProcessor() );
Model target = processModelsForInheritance( convertDomainModelsToMavenModels( domainModels ), processors );
- PomClassicDomainModel domainModel = new PomClassicDomainModel( convertToDomainModel( target, child.isMostSpecialized() ).getModelProperties(), child.isMostSpecialized() );
+ PomClassicDomainModel domainModel = new PomClassicDomainModel( target, child.isMostSpecialized() );
domainModel.setProjectDirectory(child.getProjectDirectory());
domainModel.setParentFile(child.getParentFile());
return domainModel;
@@ -298,32 +289,6 @@
}
- private static PomClassicDomainModel convertToDomainModel( Model model, boolean isMostSpecialized )
- throws IOException
- {
- if ( model == null )
- {
- throw new IllegalArgumentException( "model: null" );
- }
-
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- Writer out = null;
- MavenXpp3Writer writer = new MavenXpp3Writer();
- try
- {
- out = WriterFactory.newXmlWriter( baos );
- writer.write( out, model );
- }
- finally
- {
- if ( out != null )
- {
- out.close();
- }
- }
- return new PomClassicDomainModel( new ByteArrayInputStream( baos.toByteArray() ), isMostSpecialized );
- }
-
private static final Map<String, String> aliases = new HashMap<String, String>();
private static void addProjectAlias( String element, boolean leaf )
@@ -355,156 +320,6 @@
addProjectAlias( "ciManagement", false );
}
- public static void interpolateModelProperties( List<ModelProperty> modelProperties,
- List<InterpolatorProperty> interpolatorProperties, PomClassicDomainModel dm )
- throws IOException
- {
-
- if(dm == null)
- {
- throw new IllegalArgumentException("dm: null");
- }
- if ( !containsProjectVersion( interpolatorProperties ) )
- {
- aliases.put( "\\$\\{project.version\\}", "\\$\\{version\\}" );
- }
-
- if("jar".equals( dm.getModel().getPackaging() ) )
- {
- modelProperties.add( new ModelProperty(ProjectUri.packaging, "jar") );
- }
-
- List<ModelProperty> firstPassModelProperties = new ArrayList<ModelProperty>();
- List<ModelProperty> secondPassModelProperties = new ArrayList<ModelProperty>();
-
- ModelProperty buildProperty = new ModelProperty( ProjectUri.Build.xUri, null );
- for ( ModelProperty mp : modelProperties )
- {
- if ( mp.getValue() != null && !mp.getUri().contains( "#property" ) && !mp.getUri().contains( "#collection" ) )
- {
- if ( ( !buildProperty.isParentOf( mp ) && !mp.getUri().equals( ProjectUri.Reporting.outputDirectory ) || mp.getUri().equals(
- ProjectUri.Build.finalName ) ) )
- {
- firstPassModelProperties.add( mp );
- }
- else
- {
- secondPassModelProperties.add( mp );
- }
- }
- }
-
- List<InterpolatorProperty> standardInterpolatorProperties = new ArrayList<InterpolatorProperty>();
-
- if ( dm.isPomInBuild() )
- {
- String basedir = dm.getProjectDirectory().getAbsolutePath();
- standardInterpolatorProperties.add( new InterpolatorProperty( "${project.basedir}", basedir,
- PomInterpolatorTag.PROJECT_PROPERTIES.name() ) );
- standardInterpolatorProperties.add( new InterpolatorProperty( "${basedir}", basedir,
- PomInterpolatorTag.PROJECT_PROPERTIES.name() ) );
- standardInterpolatorProperties.add( new InterpolatorProperty( "${pom.basedir}", basedir,
- PomInterpolatorTag.PROJECT_PROPERTIES.name() ) );
-
- String baseuri = dm.getProjectDirectory().toURI().toString();
- standardInterpolatorProperties.add( new InterpolatorProperty( "${project.baseUri}", baseuri,
- PomInterpolatorTag.PROJECT_PROPERTIES.name() ) );
- standardInterpolatorProperties.add( new InterpolatorProperty( "${pom.baseUri}", baseuri,
- PomInterpolatorTag.PROJECT_PROPERTIES.name() ) );
- }
-
- for ( ModelProperty mp : modelProperties )
- {
- if ( mp.getUri().startsWith( ProjectUri.properties ) && mp.getValue() != null )
- {
- String uri = mp.getUri();
- standardInterpolatorProperties.add( new InterpolatorProperty(
- "${"
- + uri.substring(
- uri.lastIndexOf( "/" ) + 1,
- uri.length() ) + "}",
- mp.getValue(),
- PomInterpolatorTag.PROJECT_PROPERTIES.name() ) );
- }
- }
-
- // FIRST PASS - Withhold using build directories as interpolator properties
- List<InterpolatorProperty> ips1 = new ArrayList<InterpolatorProperty>( interpolatorProperties );
- ips1.addAll( standardInterpolatorProperties );
- ips1.addAll( ModelTransformerContext.createInterpolatorProperties(
- firstPassModelProperties,
- ProjectUri.baseUri,
- aliases,
- PomInterpolatorTag.PROJECT_PROPERTIES.name(),
- false, false ) );
- Collections.sort( ips1, new Comparator<InterpolatorProperty>()
- {
- public int compare( InterpolatorProperty o, InterpolatorProperty o1 )
- {
- if ( o.getTag() == null || o1.getTag() == null )
- {
- return 0;
- }
- return PomInterpolatorTag.valueOf( o.getTag() ).compareTo( PomInterpolatorTag.valueOf( o1.getTag() ) );
- }
- } );
-
- ModelTransformerContext.interpolateModelProperties( modelProperties, ips1 );
-
- // SECOND PASS - Set absolute paths on build directories
-
- if ( dm.isPomInBuild() )
- {
- String basedir = dm.getProjectDirectory().getAbsolutePath();
- Map<ModelProperty, ModelProperty> buildDirectories = new HashMap<ModelProperty, ModelProperty>();
- for ( ModelProperty mp : secondPassModelProperties )
- {
- if ( mp.getUri().startsWith( ProjectUri.Build.xUri )
- || mp.getUri().equals( ProjectUri.Reporting.outputDirectory ) )
- {
- File file = new File( mp.getResolvedValue() );
- if ( !file.isAbsolute() && !mp.getResolvedValue().startsWith( "${project.build." )
- && !mp.getResolvedValue().equals( "${project.basedir}" ) )
- {
- buildDirectories.put( mp,
- new ModelProperty( mp.getUri(),
- new File( basedir, file.getPath() ).getAbsolutePath() ) );
- }
- }
- }
- for ( Map.Entry<ModelProperty, ModelProperty> e : buildDirectories.entrySet() )
- {
- secondPassModelProperties.remove( e.getKey() );
- secondPassModelProperties.add( e.getValue() );
- }
- }
-
- // THIRD PASS - Use build directories as interpolator properties
- List<InterpolatorProperty> ips2 = new ArrayList<InterpolatorProperty>( interpolatorProperties );
- ips2.addAll( standardInterpolatorProperties );
- ips2.addAll( ModelTransformerContext.createInterpolatorProperties(
- secondPassModelProperties,
- ProjectUri.baseUri,
- aliases,
- PomInterpolatorTag.PROJECT_PROPERTIES.name(),
- false, false ) );
- ips2.addAll( interpolatorProperties );
- Collections.sort( ips2, new Comparator<InterpolatorProperty>()
- {
- public int compare( InterpolatorProperty o, InterpolatorProperty o1 )
- {
- if ( o.getTag() == null || o1.getTag() == null )
- {
- return 0;
- }
-
- return PomInterpolatorTag.valueOf( o.getTag() ).compareTo( PomInterpolatorTag.valueOf( o1.getTag() ) );
- }
- } );
-
- ModelTransformerContext.interpolateModelProperties( modelProperties, ips2 );
- }
-
private static boolean containsProjectVersion( List<InterpolatorProperty> interpolatorProperties )
{
InterpolatorProperty versionInterpolatorProperty =
@@ -636,4 +451,408 @@
return p;
}
+
+ public static PomClassicDomainModel interpolateDomainModel( PomClassicDomainModel dm, List<InterpolatorProperty> interpolatorProperties )
+ throws IOException {
+
+ if (dm == null) {
+ throw new IllegalArgumentException("dm: null");
+ }
+ if (!containsProjectVersion(interpolatorProperties)) {
+ aliases.put("\\$\\{project.version\\}", "\\$\\{version\\}");
+ }
+ //TODO: Insert customized logic for parsing
+ List<ModelProperty> modelProperties = dm.getModelProperties();
+
+ if ("jar".equals(dm.getModel().getPackaging())) {
+ modelProperties.add(new ModelProperty(ProjectUri.packaging, "jar"));
+ }
+
+ List<ModelProperty> firstPassModelProperties = new ArrayList<ModelProperty>();
+ List<ModelProperty> secondPassModelProperties = new ArrayList<ModelProperty>();
+
+ ModelProperty buildProperty = new ModelProperty(ProjectUri.Build.xUri,
+ null);
+
+ for ( ModelProperty mp : modelProperties )
+ {
+ if ( mp.getValue() != null && !mp.getUri().contains( "#property" ) && !mp.getUri().contains( "#collection" ) )
+ {
+ if ( ( !buildProperty.isParentOf( mp ) && !mp.getUri().equals( ProjectUri.Reporting.outputDirectory ) || mp.getUri().equals(
+ ProjectUri.Build.finalName ) ) )
+ {
+ firstPassModelProperties.add( mp );
+ }
+ else
+ {
+ secondPassModelProperties.add( mp );
+ }
+ }
+ }
+
+ /*
+ if ( !buildProperty.isParentOf(mp) && mp.getValue() != null && !mp.getUri().contains("#property")
+ && !mp.getUri().contains("#collection")) {
+ if ((!mp.getUri().equals(
+ ProjectUri.Reporting.outputDirectory) || mp
+ .getUri().equals(ProjectUri.Build.finalName))) {
+ firstPassModelProperties.add(mp);
+ } else {
+ secondPassModelProperties.add(mp);
+ }
+ }
+ */
+
+ List<InterpolatorProperty> standardInterpolatorProperties = new ArrayList<InterpolatorProperty>();
+
+ if (dm.isPomInBuild()) {
+ String basedir = dm.getProjectDirectory().getAbsolutePath();
+ standardInterpolatorProperties.add(new InterpolatorProperty(
+ "${project.basedir}", basedir,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ standardInterpolatorProperties.add(new InterpolatorProperty(
+ "${basedir}", basedir,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ standardInterpolatorProperties.add(new InterpolatorProperty(
+ "${pom.basedir}", basedir,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+
+ String baseuri = dm.getProjectDirectory().toURI().toString();
+ standardInterpolatorProperties.add(new InterpolatorProperty(
+ "${project.baseUri}", baseuri,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ standardInterpolatorProperties.add(new InterpolatorProperty(
+ "${pom.baseUri}", baseuri,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ }
+
+ for (ModelProperty mp : modelProperties) {
+ if (mp.getUri().startsWith(ProjectUri.properties)
+ && mp.getValue() != null) {
+ String uri = mp.getUri();
+ standardInterpolatorProperties.add(new InterpolatorProperty(
+ "${"
+ + uri.substring(uri.lastIndexOf("/") + 1, uri
+ .length()) + "}", mp.getValue(),
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ }
+ }
+
+ // FIRST PASS - Withhold using build directories as interpolator
+ // properties
+ List<InterpolatorProperty> ips1 = new ArrayList<InterpolatorProperty>(
+ interpolatorProperties);
+ ips1.addAll(standardInterpolatorProperties);
+ ips1.addAll(createInterpolatorProperties(
+ firstPassModelProperties, ProjectUri.baseUri, aliases,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ Collections.sort(ips1, new Comparator<InterpolatorProperty>() {
+ public int compare(InterpolatorProperty o, InterpolatorProperty o1) {
+ if (o.getTag() == null || o1.getTag() == null) {
+ return 0;
+ }
+ return PomInterpolatorTag.valueOf(o.getTag()).compareTo(
+ PomInterpolatorTag.valueOf(o1.getTag()));
+ }
+ });
+
+ interpolateModelProperties(modelProperties, ips1);
+
+ // SECOND PASS - Set absolute paths on build directories
+ if (dm.isPomInBuild()) {
+ String basedir = dm.getProjectDirectory().getAbsolutePath();
+ Map<ModelProperty, ModelProperty> buildDirectories = new HashMap<ModelProperty, ModelProperty>();
+ for (ModelProperty mp : secondPassModelProperties) {
+ if (mp.getUri().startsWith(ProjectUri.Build.xUri)
+ || mp.getUri().equals(
+ ProjectUri.Reporting.outputDirectory)) {
+ File file = new File(mp.getResolvedValue());
+ if (!file.isAbsolute()
+ && !mp.getResolvedValue().startsWith(
+ "${project.build.")
+ && !mp.getResolvedValue().equals(
+ "${project.basedir}")) {
+ buildDirectories.put(mp, new ModelProperty(mp.getUri(),
+ new File(basedir, file.getPath())
+ .getAbsolutePath()));
+ }
+ }
+ }
+ for (Map.Entry<ModelProperty, ModelProperty> e : buildDirectories
+ .entrySet()) {
+ secondPassModelProperties.remove(e.getKey());
+ secondPassModelProperties.add(e.getValue());
+ }
+ }
+
+ // THIRD PASS - Use build directories as interpolator properties
+ List<InterpolatorProperty> ips2 = new ArrayList<InterpolatorProperty>(
+ interpolatorProperties);
+ ips2.addAll(standardInterpolatorProperties);
+ ips2.addAll(createInterpolatorProperties(
+ secondPassModelProperties, ProjectUri.baseUri, aliases,
+ PomInterpolatorTag.PROJECT_PROPERTIES.name()));
+ ips2.addAll(interpolatorProperties);
+ Collections.sort(ips2, new Comparator<InterpolatorProperty>() {
+ public int compare(InterpolatorProperty o, InterpolatorProperty o1) {
+ if (o.getTag() == null || o1.getTag() == null) {
+ return 0;
+ }
+
+ return PomInterpolatorTag.valueOf(o.getTag()).compareTo(
+ PomInterpolatorTag.valueOf(o1.getTag()));
+ }
+ });
+
+ interpolateModelProperties(modelProperties, ips2);
+
+
+
+ if ( dm.getProjectDirectory() != null )
+ {
+ modelProperties = ProcessorContext.alignPaths( modelProperties, dm.getProjectDirectory() );
+ }
+ try
+ {
+ String xml = unmarshalModelPropertiesToXml( modelProperties, ProjectUri.baseUri );
+ return new PomClassicDomainModel( new ByteArrayInputStream ( xml.getBytes( "UTF-8" )));
+ }
+ catch ( IOException e )
+ {
+ throw new IllegalStateException( "Unmarshalling of model properties failed", e );
+ }
+
+
+
+ /*
+ for(ModelProperty mp : modelProperties)
+ {
+ if((mp.getValue() != null) && !mp.getValue().equals(mp.getResolvedValue()))
+ {
+ if(mp.getUri().equals(ProjectUri.version))
+ {
+
+ }
+ }
+ }
+ */
+ }
+
+ public static void interpolateModelProperties(List<ModelProperty> modelProperties,
+ List<InterpolatorProperty> interpolatorProperties )
+ {
+ if (modelProperties == null) {
+ throw new IllegalArgumentException("modelProperties: null");
+ }
+
+ if (interpolatorProperties == null) {
+ throw new IllegalArgumentException("interpolatorProperties: null");
+ }
+
+ List<ModelProperty> unresolvedProperties = new ArrayList<ModelProperty>();
+ for (ModelProperty mp : modelProperties) {
+ if (!mp.isResolved()) {
+ unresolvedProperties.add(mp);
+ }
+ }
+
+ LinkedHashSet<InterpolatorProperty> ips = new LinkedHashSet<InterpolatorProperty>();
+ ips.addAll(interpolatorProperties);
+ boolean continueInterpolation = true;
+ while (continueInterpolation) {
+ continueInterpolation = false;
+ for (InterpolatorProperty ip : ips) {
+ for (ModelProperty mp : unresolvedProperties) {
+ if (mp.resolveWith(ip) && !continueInterpolation) {
+ continueInterpolation = true;
+ }
+ }
+ }
+ }
+ }
+
+ private static List<InterpolatorProperty> createInterpolatorProperties(List<ModelProperty> modelProperties,
+ String baseUriForModel,
+ Map<String, String> aliases,
+ String interpolatorTag)
+ {
+ if (modelProperties == null) {
+ throw new IllegalArgumentException("modelProperties: null");
+ }
+
+ if (baseUriForModel == null) {
+ throw new IllegalArgumentException("baseUriForModel: null");
+ }
+
+ List<InterpolatorProperty> interpolatorProperties = new ArrayList<InterpolatorProperty>();
+
+ for (ModelProperty mp : modelProperties) {
+ InterpolatorProperty ip = mp
+ .asInterpolatorProperty(baseUriForModel);
+ if (ip != null) {
+ ip.setTag(interpolatorTag);
+ interpolatorProperties.add(ip);
+ for (Map.Entry<String, String> a : aliases.entrySet()) {
+ interpolatorProperties.add(new InterpolatorProperty(ip
+ .getKey().replaceAll(a.getKey(), a.getValue()), ip
+ .getValue().replaceAll(a.getKey(), a.getValue()),
+ interpolatorTag));
+ }
+ }
+ }
+
+ List<InterpolatorProperty> ips = new ArrayList<InterpolatorProperty>();
+ for (InterpolatorProperty ip : interpolatorProperties) {
+ if (!ips.contains(ip)) {
+ ips.add(ip);
+ }
+ }
+ return ips;
+ }
+
+ /**
+ * Returns XML string unmarshalled from the specified list of model properties
+ *
+ * @param modelProperties the model properties to unmarshal. May not be null or empty
+ * @param baseUri the base uri of every model property. May not be null or empty.
+ * @return XML string unmarshalled from the specified list of model properties
+ * @throws IOException if there was a problem with unmarshalling
+ */
+ public static String unmarshalModelPropertiesToXml( List<ModelProperty> modelProperties, String baseUri )
+ throws IOException
+ {
+ if ( modelProperties == null || modelProperties.isEmpty() )
+ {
+ throw new IllegalArgumentException( "modelProperties: null or empty" );
+ }
+
+ if ( baseUri == null || baseUri.trim().length() == 0 )
+ {
+ throw new IllegalArgumentException( "baseUri: null or empty" );
+ }
+
+ final int basePosition = baseUri.length();
+
+ StringBuffer sb = new StringBuffer();
+ List<String> lastUriTags = new ArrayList<String>();
+ for ( ModelProperty mp : modelProperties )
+ {
+ String uri = mp.getUri();
+ if ( uri.contains( "#property" ) )
+ {
+ continue;
+ }
+
+ //String val = (mp.getResolvedValue() != null) ? "\"" + mp.getResolvedValue() + "\"" : null;
+ // System.out.println("new ModelProperty(\"" + mp.getUri() +"\" , " + val +"),");
+ if ( !uri.startsWith( baseUri ) )
+ {
+ throw new IllegalArgumentException(
+ "Passed in model property that does not match baseUri: Property URI = " + uri + ", Base URI = " +
+ baseUri );
+ }
+
+ List<String> tagNames = getTagNamesFromUri( basePosition, uri );
+
+ for ( int i = lastUriTags.size() - 1; i >= 0 && i >= tagNames.size() - 1; i-- )
+ {
+ sb.append( toEndTag( lastUriTags.get( i ) ) );
+ }
+
+ String tag = tagNames.get( tagNames.size() - 1 );
+
+ List<ModelProperty> attributes = new ArrayList<ModelProperty>();
+ for(int peekIndex = modelProperties.indexOf( mp ) + 1; peekIndex < modelProperties.size(); peekIndex++)
+ {
+ if ( peekIndex <= modelProperties.size() - 1 )
+ {
+ ModelProperty peekProperty = modelProperties.get( peekIndex );
+ if ( peekProperty.getUri().contains( "#property" ) )
+ {
+ attributes.add(peekProperty);
+ }
+ else
+ {
+ break;
+ }
+ }
+ else
+ {
+ break;
+ }
+ }
+
+ sb.append( toStartTag( tag, attributes ) );
+
+ if ( mp.getResolvedValue() != null )
+ {
+ sb.append( mp.getResolvedValue() );
+ }
+
+ lastUriTags = tagNames;
+ }
+
+ for ( int i = lastUriTags.size() - 1; i >= 1; i-- )
+ {
+ sb.append( toEndTag( lastUriTags.get( i ) ) );
+ }
+
+ return sb.toString();
+ }
+
+ /**
+ * Returns list of tag names parsed from the specified uri. All #collection parts of the tag are removed from the
+ * tag names.
+ *
+ * @param basePosition the base position in the specified URI to start the parse
+ * @param uri the uri to parse for tag names
+ * @return list of tag names parsed from the specified uri
+ */
+ private static List<String> getTagNamesFromUri( int basePosition, String uri )
+ {
+ return Arrays.asList( uri.substring( basePosition ).replaceAll( "#collection", "" )
+ .replaceAll("#set", "").split( "/" ) );
+ }
+
+ /**
+ * Returns the XML formatted start tag for the specified value and the specified attribute.
+ *
+ * @param value the value to use for the start tag
+ * @param attributes the attribute to use in constructing of start tag
+ * @return the XML formatted start tag for the specified value and the specified attribute
+ */
+ private static String toStartTag( String value, List<ModelProperty> attributes )
+ {
+ StringBuffer sb = new StringBuffer(); //TODO: Support more than one attribute
+ sb.append( "\r\n<" ).append( value );
+ if ( attributes != null )
+ {
+ for(ModelProperty attribute : attributes)
+ {
+ sb.append( " " ).append(
+ attribute.getUri().substring( attribute.getUri().indexOf( "#property/" ) + 10 ) ).append( "=\"" )
+ .append( attribute.getResolvedValue() ).append( "\" " );
+ }
+ }
+ sb.append( ">" );
+ return sb.toString();
+ }
+
+ /**
+ * Returns XML formatted end tag for the specified value.
+ *
+ * @param value the value to use for the end tag
+ * @return xml formatted end tag for the specified value
+ */
+ private static String toEndTag( String value )
+ {
+ if ( value.trim().length() == 0 )
+ {
+ return "";
+ }
+ StringBuffer sb = new StringBuffer();
+ sb.append( "</" ).append( value ).append( ">" );
+ return sb.toString();
+ }
+
}
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-project-builder/src/main/java/org/apache/maven/project/builder/ProcessorContext.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Apr 13 19:14:44 2009
@@ -0,0 +1,7 @@
+/maven/components/branches/MNG-3932-1/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:746145-746157
+/maven/components/branches/maven-2.0.10-RC/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:680477
+/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:679206,708871,720042,726541,727548,727998,728264,728940,729060,729738,729785,730631
+/maven/components/branches/maven-2.1.x/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:739385,741841,747468,748815,749612
+/maven/components/branches/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:738973-739966
+/maven/components/sisbell-plugin-manager/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:738757-738972
+/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/processor/ProcessorContext.java:688587-696625,696644-699681