You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by si...@apache.org on 2008/07/15 05:25:14 UTC

svn commit: r676790 - in /maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src: main/java/org/apache/maven/project/builder/ test/java/org/apache/maven/project/inheritance/t12scm/

Author: sisbell
Date: Mon Jul 14 20:25:14 2008
New Revision: 676790

URL: http://svn.apache.org/viewvc?rev=676790&view=rev
Log:
Fixed scm unit tests to verify that the scm URL contains artifact id (not module name). Added support for scm developer and scm connection rules.

Modified:
    maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/IdModelContainerFactory.java
    maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java
    maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/test/java/org/apache/maven/project/inheritance/t12scm/ProjectInheritanceTest.java

Modified: maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/IdModelContainerFactory.java
URL: http://svn.apache.org/viewvc/maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/IdModelContainerFactory.java?rev=676790&r1=676789&r2=676790&view=diff
==============================================================================
--- maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/IdModelContainerFactory.java (original)
+++ maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/IdModelContainerFactory.java Mon Jul 14 20:25:14 2008
@@ -14,7 +14,8 @@
             ProjectUri.Repositories.Repository.xUri,
             ProjectUri.Reporting.Plugins.Plugin.ReportSets.ReportSet.xUri,
             ProjectUri.Profiles.Profile.xUri,
-            ProjectUri.Build.Plugins.Plugin.Executions.Execution.xUri           
+            ProjectUri.Build.Plugins.Plugin.Executions.Execution.xUri,
+            ProjectUri.Profiles.Profile.Build.Plugins.Plugin.Executions.Execution.xUri
     ));
 
     public Collection<String> getUris() {

Modified: maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java
URL: http://svn.apache.org/viewvc/maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java?rev=676790&r1=676789&r2=676790&view=diff
==============================================================================
--- maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java (original)
+++ maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/main/java/org/apache/maven/project/builder/PomClassicTransformer.java Mon Jul 14 20:25:14 2008
@@ -38,6 +38,7 @@
                 ProjectUri.Dependencies.Dependency.Exclusions.xUri,
 
                 ProjectUri.DependencyManagement.Dependencies.xUri,
+                ProjectUri.DependencyManagement.Dependencies.Dependency.Exclusions.xUri,
 
                 ProjectUri.Developers.xUri,
                 ProjectUri.Licenses.xUri,
@@ -46,24 +47,22 @@
                 ProjectUri.PluginRepositories.xUri,
 
                 ProjectUri.Profiles.xUri,
+                ProjectUri.Profiles.Profile.Build.Plugins.Plugin.Dependencies.xUri,
+                ProjectUri.Profiles.Profile.Build.Resources.xUri,
                 ProjectUri.Profiles.Profile.Build.TestResources.xUri,
                 ProjectUri.Profiles.Profile.Dependencies.xUri,
+                ProjectUri.Profiles.Profile.Dependencies.Dependency.Exclusions.xUri,
                 ProjectUri.Profiles.Profile.DependencyManagement.Dependencies.xUri,
+                ProjectUri.Profiles.Profile.PluginRepositories.xUri,
                 ProjectUri.Profiles.Profile.Repositories.xUri,
 
                 ProjectUri.Reporting.Plugins.xUri,
+                ProjectUri.Reporting.Plugins.Plugin.ReportSets.xUri,
 
                 ProjectUri.Repositories.xUri,
 
-                "http://apache.org/maven/project/dependencyManagement/dependencies/dependency/exclusions#collection",
-                "http://apache.org/maven/project/reporting/plugins/plugin/reportSets#collection",
-
                 "http://apache.org/maven/project/profiles/profile/build/pluginManagement/plugins/plugin/dependencies#collection",
-                "http://apache.org/maven/project/profiles/profile/build/resources#collection",
                 "http://apache.org/maven/project/profiles/profile/build/pluginManagement/plugins/plugin/dependencies/dependency/exclusions#collection",
-                "http://apache.org/maven/project/profiles/profile/build/plugins/plugin/dependencies#collection",
-                "http://apache.org/maven/project/profiles/profile/pluginRepositories#collection",
-                "http://apache.org/maven/project/profiles/profile/dependencies/dependency/exclusions#collection",
                 "http://apache.org/maven/project/profiles/profile/build/pluginManagement/plugins/plugin/executions#collection",
                 "http://apache.org/maven/project/profiles/profile/build/pluginManagement/plugins#collection",
                 "http://apache.org/maven/project/profiles/profile/build/plugins/plugin/dependencies/dependency/exclusions#collection",
@@ -74,7 +73,6 @@
                 "http://apache.org/maven/project/profiles/profile/build/plugins/plugin/executions#collection",
 
                 "http://apache.org/maven/project/build/plugins/plugin/dependencies/dependency/exclusions#collection",
-                "http://apache.org/maven/project/build/plugins/plugin/dependencies#collection",
                 "http://apache.org/maven/project/build/pluginManagement/plugins/plugin/dependencies/dependency/exclusions#collection",
                 "http://apache.org/maven/project/build/pluginManagement/plugins/plugin/executions#collection",
                 "http://apache.org/maven/project/build/pluginManagement/plugins/plugin/dependencies#collection"
@@ -113,7 +111,8 @@
         List<ModelProperty> modelProperties = new ArrayList<ModelProperty>();
         List<String> projectNames = new ArrayList<String>();
         StringBuffer scmUrl = new StringBuffer();
-
+        StringBuffer scmConnectionUrl = new StringBuffer();
+        StringBuffer scmDeveloperUrl = new StringBuffer();
         for (DomainModel domainModel : domainModels) {
             if (!(domainModel instanceof PomClassicDomainModel)) {
                 throw new IllegalArgumentException("domainModels: Invalid domain model");
@@ -154,7 +153,7 @@
                         if (mp.getUri().equals(ProjectUri.Build.Plugins.Plugin.Executions.Execution.inherited)
                                 && mp.getValue() != null && mp.getValue().equals("false")) {
                             removeProperties.addAll(container.getProperties());
-                            for (int j = tmp.indexOf(mp); j >=0; j--) {
+                            for (int j = tmp.indexOf(mp); j >= 0; j--) {
                                 if (tmp.get(j).getUri().equals(ProjectUri.Build.Plugins.Plugin.Executions.xUri)) {
                                     removeProperties.add(tmp.get(j));
                                     break;
@@ -178,6 +177,31 @@
                 tmp.remove(index);
                 tmp.add(index, new ModelProperty(ProjectUri.Scm.url, scmUrl.toString()));
             }
+
+            //SCM Connection Rule
+            scmUrlProperty = getPropertyFor(ProjectUri.Scm.connection, tmp);
+            if (scmConnectionUrl.length() == 0 && scmUrlProperty != null) {
+                scmConnectionUrl.append(scmUrlProperty.getValue());
+                for (String projectName : projectNames) {
+                    scmConnectionUrl.append("/").append(projectName);
+                }
+                int index = tmp.indexOf(scmUrlProperty);
+                tmp.remove(index);
+                tmp.add(index, new ModelProperty(ProjectUri.Scm.connection, scmConnectionUrl.toString()));
+            }
+
+            //SCM Developer Rule
+            scmUrlProperty = getPropertyFor(ProjectUri.Scm.developerConnection, tmp);
+            if (scmDeveloperUrl.length() == 0 && scmUrlProperty != null) {
+                scmDeveloperUrl.append(scmUrlProperty.getValue());
+                for (String projectName : projectNames) {
+                    scmDeveloperUrl.append("/").append(projectName);
+                }
+                int index = tmp.indexOf(scmUrlProperty);
+                tmp.remove(index);
+                tmp.add(index, new ModelProperty(ProjectUri.Scm.developerConnection, scmDeveloperUrl.toString()));
+            }
+
             projectNames.add(0, getPropertyFor(ProjectUri.artifactId, tmp).getValue());
 
             modelProperties.addAll(tmp);

Modified: maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/test/java/org/apache/maven/project/inheritance/t12scm/ProjectInheritanceTest.java
URL: http://svn.apache.org/viewvc/maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/test/java/org/apache/maven/project/inheritance/t12scm/ProjectInheritanceTest.java?rev=676790&r1=676789&r2=676790&view=diff
==============================================================================
--- maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/test/java/org/apache/maven/project/inheritance/t12scm/ProjectInheritanceTest.java (original)
+++ maven/sandbox/branches/SI_MAVEN_2_1/maven-project/src/test/java/org/apache/maven/project/inheritance/t12scm/ProjectInheritanceTest.java Mon Jul 14 20:25:14 2008
@@ -69,12 +69,12 @@
         System.out.println( "Child SCM developer connection is: "
                             + project1.getScm().getDeveloperConnection() );
 
-        assertEquals( project1.getScm().getUrl(), project0.getScm().getUrl() + "/modules/p1" );
+        assertEquals( project1.getScm().getUrl(), project0.getScm().getUrl() + "/p1" );
         assertEquals( project1.getScm().getConnection(), project0.getScm().getConnection()
-                                                         + "/modules/p1" );
+                                                         + "/p1" );
         assertEquals( project1.getScm().getDeveloperConnection(), project0.getScm()
                                                                           .getDeveloperConnection()
-                                                                  + "/modules/p1" );
+                                                                  + "/p1" );
     }
 
     public void testScmInfoCalculatedCorrectlyOnChildOnlyRead()
@@ -93,10 +93,9 @@
         System.out.println( "Child SCM developer connection is: "
                             + project1.getScm().getDeveloperConnection() );
 
-        assertEquals( project1.getScm().getUrl(), "http://host/viewer?path=/p0/modules/p1" );
-        assertEquals( project1.getScm().getConnection(), "scm:svn:http://host/p0/modules/p1" );
-        assertEquals( project1.getScm().getDeveloperConnection(),
-                      "scm:svn:https://host/p0/modules/p1" );
+        assertEquals("http://host/viewer?path=/p0/p1", project1.getScm().getUrl());
+        assertEquals( "scm:svn:http://host/p0/p1", project1.getScm().getConnection() );
+        assertEquals("scm:svn:https://host/p0/p1", project1.getScm().getDeveloperConnection());
     }
 
 //    public void testScmInfoCalculatedCorrectlyOnChildReadFromLocalRepository()