Author: sisbell
Date: Wed Nov 12 12:01:20 2008
New Revision: 713483

URL: http://svn.apache.org/viewvc?rev=713483&view=rev
Log:
Fix for mng-3259.

Modified:
    
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ArtifactModelContainerFactory.java

Modified: 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ArtifactModelContainerFactory.java
URL: 
http://svn.apache.org/viewvc/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ArtifactModelContainerFactory.java?rev=713483&r1=713482&r2=713483&view=diff
==============================================================================
--- 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ArtifactModelContainerFactory.java
 (original)
+++ 
maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/builder/ArtifactModelContainerFactory.java
 Wed Nov 12 12:01:20 2008
@@ -71,6 +71,8 @@
 
         private String type;
 
+        private String scope;
+
         private List<ModelProperty> properties;
 
         private static String findBaseUriFrom( List<ModelProperty> 
modelProperties )
@@ -106,6 +108,10 @@
                 {
                     this.groupId = mp.getResolvedValue();
                 }
+                else if ( scope == null && mp.getUri().equals( uri + "/scope" 
) )
+                {
+                    this.scope = mp.getResolvedValue();
+                }
                 else if ( type == null && mp.getUri().equals( 
ProjectUri.Dependencies.Dependency.type )
                         || 
mp.getUri().equals(ProjectUri.DependencyManagement.Dependencies.Dependency.type)
                         || 
mp.getUri().equals(ProjectUri.Build.PluginManagement.Plugins.Plugin.Dependencies.Dependency.type)
@@ -132,10 +138,20 @@
                     ", Version = " + version + ", Base = " + uri + ":\r\n" + 
sb );
             }
 
+            if ( version == null )
+            {
+                version = "";
+            }
+
             if ( type == null )
             {
                 type = "";
             }
+
+            if ( scope == null )
+            {
+                scope = "";
+            }
         }
 
         public ModelContainerAction containerAction( ModelContainer 
modelContainer )
@@ -153,51 +169,28 @@
             ArtifactModelContainer c = (ArtifactModelContainer) modelContainer;
             if ( c.groupId.equals( groupId ) && c.artifactId.equals( 
artifactId ) )
             {
-                if ( c.version == null )
+                if ( c.version.equals( version ) )
                 {
-                    if ( version == null )
+                    if ( c.type.equals( type )  )
                     {
-                        if ( c.type.equals( type ) )
-                        {
-                            return ModelContainerAction.JOIN;
-                        }
-                        else
-                        {
-                            return ModelContainerAction.NOP;
-                        }
+                        return ModelContainerAction.JOIN;
                     }
-                    return ModelContainerAction.JOIN;
-                }
-                if ( version == null )
-                {
-                    if ( c.version == null )
+                    else
                     {
-                        if ( c.type.equals( type ) )
-                        {
-                            return ModelContainerAction.JOIN;
-                        }
-                        else
-                        {
-                            return ModelContainerAction.NOP;
-                        }
+                        return ModelContainerAction.NOP;
                     }
-                    return ModelContainerAction.JOIN;
                 }
-                if ( c.version.equals( version ) )
+                else
                 {
                     if ( c.type.equals( type ) )
                     {
-                        return ModelContainerAction.JOIN;
+                        return ModelContainerAction.DELETE;
                     }
                     else
                     {
                         return ModelContainerAction.NOP;
                     }
                 }
-                else
-                {
-                    return ModelContainerAction.DELETE;
-                }
             }
             else
             {


Reply via email to