Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/AbstractModuleDescriptorParserTester.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/AbstractModuleDescriptorParserTester.java?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/AbstractModuleDescriptorParserTester.java
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/AbstractModuleDescriptorParserTester.java
 Tue Apr  3 10:45:54 2007
@@ -25,6 +25,8 @@
 import org.apache.ivy.core.module.descriptor.Configuration;
 import org.apache.ivy.core.module.descriptor.DependencyArtifactDescriptor;
 import org.apache.ivy.core.module.descriptor.DependencyDescriptor;
+import org.apache.ivy.core.module.descriptor.ExcludeRule;
+import org.apache.ivy.core.module.descriptor.IncludeRule;
 import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
 import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
 
@@ -56,11 +58,8 @@
         }
     }
 
-    protected void assertDependencyArtifactsIncludes(DependencyDescriptor dd, 
String[] confs, String[] artifactsNames) {
-       assertDependencyArtifactsIncludes(dd, confs, artifactsNames, false);
-    }
-    protected void assertDependencyArtifactsIncludes(DependencyDescriptor dd, 
String[] confs, String[] artifactsNames, boolean assumePublished) {
-        DependencyArtifactDescriptor[] dads = 
dd.getDependencyArtifactsIncludes(confs);
+    protected void assertDependencyArtifacts(DependencyDescriptor dd, String[] 
confs, String[] artifactsNames) {
+        DependencyArtifactDescriptor[] dads = dd.getDependencyArtifacts(confs);
         assertNotNull(dads);
         assertEquals(artifactsNames.length, dads.length);
         for (int i = 0; i < artifactsNames.length; i++) {
@@ -68,41 +67,57 @@
             for (int j = 0; j < dads.length; j++) {
                 assertNotNull(dads[j]);
                 if (dads[j].getName().equals(artifactsNames[i])) {
-                       assertEquals("unexpected value for assumePublished on 
"+artifactsNames[i], assumePublished, dads[j].isAssumePublished());
                     found = true;
                     break;
                 }
             }
-            assertTrue("dependency artifact include not found: 
"+artifactsNames[i], found);
+            assertTrue("dependency artifact not found: "+artifactsNames[i], 
found);
         }
     }
 
-    protected void assertDependencyArtifactsExcludes(DependencyDescriptor dd, 
String[] confs, String[] artifactsNames) {
-        DependencyArtifactDescriptor[] dads = 
dd.getDependencyArtifactsExcludes(confs);
+    protected void assertDependencyArtifactIncludeRules(DependencyDescriptor 
dd, String[] confs, String[] artifactsNames) {
+        IncludeRule[] dads = dd.getIncludeRules(confs);
         assertNotNull(dads);
         assertEquals(artifactsNames.length, dads.length);
         for (int i = 0; i < artifactsNames.length; i++) {
             boolean found = false;
             for (int j = 0; j < dads.length; j++) {
                 assertNotNull(dads[j]);
-                if (dads[j].getName().equals(artifactsNames[i])) {
+                if (dads[j].getId().getName().equals(artifactsNames[i])) {
+                    found = true;
+                    break;
+                }
+            }
+            assertTrue("dependency include not found: "+artifactsNames[i], 
found);
+        }
+    }
+
+    protected void assertDependencyArtifactExcludeRules(DependencyDescriptor 
dd, String[] confs, String[] artifactsNames) {
+        ExcludeRule[] rules = dd.getExcludeRules(confs);
+        assertNotNull(rules);
+        assertEquals(artifactsNames.length, rules.length);
+        for (int i = 0; i < artifactsNames.length; i++) {
+            boolean found = false;
+            for (int j = 0; j < rules.length; j++) {
+                assertNotNull(rules[j]);
+                if (rules[j].getId().getName().equals(artifactsNames[i])) {
                     found = true;
                     break;
                 }
             }
-            assertTrue("dependency artifact exclude not found: 
"+artifactsNames[i], found);
+            assertTrue("dependency exclude not found: "+artifactsNames[i], 
found);
         }
     }
 
     protected void assertDependencyModulesExcludes(DependencyDescriptor dd, 
String[] confs, String[] moduleNames) {
-        DependencyArtifactDescriptor[] dads = 
dd.getDependencyArtifactsExcludes(confs);
-        assertNotNull(dads);
-        assertEquals(moduleNames.length, dads.length);
+       ExcludeRule[] rules = dd.getExcludeRules(confs);
+        assertNotNull(rules);
+        assertEquals(moduleNames.length, rules.length);
         for (int i = 0; i < moduleNames.length; i++) {
             boolean found = false;
-            for (int j = 0; j < dads.length; j++) {
-                assertNotNull(dads[j]);
-                if 
(dads[j].getId().getModuleId().getName().equals(moduleNames[i])) {
+            for (int j = 0; j < rules.length; j++) {
+                assertNotNull(rules[j]);
+                if 
(rules[j].getId().getModuleId().getName().equals(moduleNames[i])) {
                     found = true;
                     break;
                 }

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParserTest.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParserTest.java?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParserTest.java
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/m2/PomModuleDescriptorParserTest.java
 Tue Apr  3 10:45:54 2007
@@ -116,8 +116,8 @@
         assertEquals(ModuleRevisionId.newInstance("commons-logging", 
"commons-logging", "1.0.4"), dds[0].getDependencyRevisionId());
         Map extraAtt = new HashMap();
         extraAtt.put("classifier", "asl");
-        assertEquals(1, dds[0].getAllDependencyArtifactsIncludes().length);
-        assertEquals(extraAtt, 
dds[0].getAllDependencyArtifactsIncludes()[0].getExtraAttributes());
+        assertEquals(1, dds[0].getAllDependencyArtifacts().length);
+        assertEquals(extraAtt, 
dds[0].getAllDependencyArtifacts()[0].getExtraAttributes());
     }
     
     // IVY-392
@@ -263,7 +263,7 @@
         assertEquals(new HashSet(Arrays.asList(new String[] {"compile", 
"runtime"})), new HashSet(Arrays.asList(dds[0].getModuleConfigurations())));
         assertEquals(new HashSet(Arrays.asList(new String[] {"master(*)", 
"compile(*)"})), new 
HashSet(Arrays.asList(dds[0].getDependencyConfigurations("compile"))));
         assertEquals(new HashSet(Arrays.asList(new String[] {"runtime(*)"})), 
new HashSet(Arrays.asList(dds[0].getDependencyConfigurations("runtime"))));
-        assertEquals(0, dds[0].getAllDependencyArtifactsExcludes().length);
+        assertEquals(0, dds[0].getAllExcludeRules().length);
         
         assertEquals(ModuleRevisionId.newInstance("dom4j", "dom4j", "1.6"), 
dds[1].getDependencyRevisionId());
         assertEquals(new HashSet(Arrays.asList(new String[] {"compile", 
"runtime"})), new HashSet(Arrays.asList(dds[1].getModuleConfigurations())));
@@ -276,7 +276,7 @@
         assertEquals(new HashSet(Arrays.asList(new String[] {"compile", 
"runtime"})), new HashSet(Arrays.asList(dds[2].getModuleConfigurations())));
         assertEquals(new HashSet(Arrays.asList(new String[] {"master(*)", 
"compile(*)"})), new 
HashSet(Arrays.asList(dds[2].getDependencyConfigurations("compile"))));
         assertEquals(new HashSet(Arrays.asList(new String[] {"runtime(*)"})), 
new HashSet(Arrays.asList(dds[2].getDependencyConfigurations("runtime"))));
-        assertEquals(0, dds[2].getAllDependencyArtifactsExcludes().length);
+        assertEquals(0, dds[2].getAllExcludeRules().length);
     }
 
     public void testWithPlugins() throws Exception {

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParserTest.java
 Tue Apr  3 10:45:54 2007
@@ -28,6 +28,7 @@
 import org.apache.ivy.core.module.descriptor.Artifact;
 import org.apache.ivy.core.module.descriptor.Configuration;
 import org.apache.ivy.core.module.descriptor.DependencyDescriptor;
+import org.apache.ivy.core.module.descriptor.ExcludeRule;
 import org.apache.ivy.core.module.descriptor.License;
 import org.apache.ivy.core.module.descriptor.ModuleDescriptor;
 import org.apache.ivy.core.module.descriptor.Configuration.Visibility;
@@ -36,6 +37,8 @@
 import org.apache.ivy.plugins.conflict.ConflictManager;
 import org.apache.ivy.plugins.conflict.FixedConflictManager;
 import org.apache.ivy.plugins.conflict.NoConflictManager;
+import org.apache.ivy.plugins.matcher.ExactPatternMatcher;
+import org.apache.ivy.plugins.matcher.GlobPatternMatcher;
 import org.apache.ivy.plugins.matcher.PatternMatcher;
 import org.apache.ivy.plugins.parser.AbstractModuleDescriptorParserTester;
 import org.apache.ivy.util.XMLHelper;
@@ -178,7 +181,7 @@
         assertEquals(Arrays.asList(new String[] {"*"}), 
Arrays.asList(dd.getModuleConfigurations()));
         assertEquals(Arrays.asList(new String[] {"*"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {"*"}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf2", 
"myconf3", "myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         assertFalse(dd.isChanging());
         assertTrue(dd.isTransitive());
         
@@ -196,7 +199,7 @@
         assertEquals(Arrays.asList(new String[] {"myconf1"}), 
Arrays.asList(dd.getModuleConfigurations()));
         assertEquals(Arrays.asList(new String[] {"myconf1"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf2", 
"myconf3", "myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         // conf="myconf1->yourconf1"
         dd = getDependency(dependencies, "yourmodule2");
@@ -206,7 +209,7 @@
         assertEquals(Arrays.asList(new String[] {"myconf1"}), 
Arrays.asList(dd.getModuleConfigurations()));
         assertEquals(Arrays.asList(new String[] {"yourconf1"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf2", 
"myconf3", "myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         // conf="myconf1->yourconf1, yourconf2"
         dd = getDependency(dependencies, "yourmodule3");
@@ -216,7 +219,7 @@
         assertEquals(Arrays.asList(new String[] {"myconf1"}), 
Arrays.asList(dd.getModuleConfigurations()));
         assertEquals(Arrays.asList(new String[] {"yourconf1", "yourconf2"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf2", 
"myconf3", "myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         // conf="myconf1, myconf2->yourconf1, yourconf2"
         dd = getDependency(dependencies, "yourmodule4");
@@ -227,7 +230,7 @@
         assertEquals(Arrays.asList(new String[] {"yourconf1", "yourconf2"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {"yourconf1", "yourconf2"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf2")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf3", 
"myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         // conf="myconf1->yourconf1;myconf2->yourconf1, yourconf2"
         dd = getDependency(dependencies, "yourmodule5");
@@ -238,7 +241,7 @@
         assertEquals(Arrays.asList(new String[] {"yourconf1"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {"yourconf1", "yourconf2"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf2")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf3", 
"myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         // conf="*->@"
         dd = getDependency(dependencies, "yourmodule11");
@@ -259,7 +262,7 @@
         assertEquals(Arrays.asList(new String[] {"yourconf1"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {"yourconf1", "yourconf2"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf2")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf3", 
"myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         dd = getDependency(dependencies, "yourmodule7");
         assertNotNull(dd);
@@ -269,45 +272,45 @@
         assertEquals(Arrays.asList(new String[] {"yourconf1"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf1")));        
         assertEquals(Arrays.asList(new String[] {"yourconf1", "yourconf2"}), 
Arrays.asList(dd.getDependencyConfigurations("myconf2")));        
         assertEquals(Arrays.asList(new String[] {}), 
Arrays.asList(dd.getDependencyConfigurations(new String[] {"myconf3", 
"myconf4"})));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0], false);
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1", 
"myconf2", "myconf3", "myconf4"}, new String[0]);
         
         dd = getDependency(dependencies, "yourmodule8");
         assertNotNull(dd);
         assertEquals("yourorg", dd.getDependencyId().getOrganisation());
         assertEquals("8.1", dd.getDependencyRevisionId().getRevision());
         assertEquals(new HashSet(Arrays.asList(new String[] {"*"})), new 
HashSet(Arrays.asList(dd.getModuleConfigurations())));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1"}, new 
String[] {"yourartifact8-1", "yourartifact8-2"}, true);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf2"}, new 
String[] {"yourartifact8-1", "yourartifact8-2"}, true);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf3"}, new 
String[] {"yourartifact8-1", "yourartifact8-2"}, true);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf4"}, new 
String[] {"yourartifact8-1", "yourartifact8-2"}, true);
+        assertDependencyArtifacts(dd, new String[] {"myconf1"}, new String[] 
{"yourartifact8-1", "yourartifact8-2"});
+        assertDependencyArtifacts(dd, new String[] {"myconf2"}, new String[] 
{"yourartifact8-1", "yourartifact8-2"});
+        assertDependencyArtifacts(dd, new String[] {"myconf3"}, new String[] 
{"yourartifact8-1", "yourartifact8-2"});
+        assertDependencyArtifacts(dd, new String[] {"myconf4"}, new String[] 
{"yourartifact8-1", "yourartifact8-2"});
         
         dd = getDependency(dependencies, "yourmodule9");
         assertNotNull(dd);
         assertEquals("yourorg", dd.getDependencyId().getOrganisation());
         assertEquals("9.1", dd.getDependencyRevisionId().getRevision());
         assertEquals(new HashSet(Arrays.asList(new String[] {"myconf1", 
"myconf2", "myconf3"})), new 
HashSet(Arrays.asList(dd.getModuleConfigurations())));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1"}, new 
String[] {"yourartifact9-1"}, true);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf2"}, new 
String[] {"yourartifact9-1", "yourartifact9-2"}, true);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf3"}, new 
String[] {"yourartifact9-2"}, true);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf4"}, new 
String[] {}, true);
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf1"}, new 
String[] {});
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf2"}, new 
String[] {});
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf3"}, new 
String[] {});
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf4"}, new 
String[] {});
+        assertDependencyArtifacts(dd, new String[] {"myconf1"}, new String[] 
{"yourartifact9-1"});
+        assertDependencyArtifacts(dd, new String[] {"myconf2"}, new String[] 
{"yourartifact9-1", "yourartifact9-2"});
+        assertDependencyArtifacts(dd, new String[] {"myconf3"}, new String[] 
{"yourartifact9-2"});
+        assertDependencyArtifacts(dd, new String[] {"myconf4"}, new String[] 
{});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf1"}, new 
String[] {});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf2"}, new 
String[] {});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf3"}, new 
String[] {});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf4"}, new 
String[] {});
         
         dd = getDependency(dependencies, "yourmodule10");
         assertNotNull(dd);
         assertEquals("yourorg", dd.getDependencyId().getOrganisation());
         assertEquals("10.1", dd.getDependencyRevisionId().getRevision());
         assertEquals(new HashSet(Arrays.asList(new String[] {"*"})), new 
HashSet(Arrays.asList(dd.getModuleConfigurations())));
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf1"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION}, false);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf2"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION}, false);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf3"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION}, false);
-        assertDependencyArtifactsIncludes(dd, new String[] {"myconf4"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION}, false);
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf1"}, new 
String[] {"toexclude"});
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf2"}, new 
String[] {"toexclude"});
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf3"}, new 
String[] {"toexclude"});
-        assertDependencyArtifactsExcludes(dd, new String[] {"myconf4"}, new 
String[] {"toexclude"});
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf1"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION});
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf2"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION});
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf3"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION});
+        assertDependencyArtifactIncludeRules(dd, new String[] {"myconf4"}, new 
String[] {"your.*", PatternMatcher.ANY_EXPRESSION});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf1"}, new 
String[] {"toexclude"});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf2"}, new 
String[] {"toexclude"});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf3"}, new 
String[] {"toexclude"});
+        assertDependencyArtifactExcludeRules(dd, new String[] {"myconf4"}, new 
String[] {"toexclude"});
                 
         ConflictManager cm = md.getConflictManager(new ModuleId("yourorg", 
"yourmodule1"));
         assertNotNull(cm);
@@ -327,6 +330,14 @@
 
         cm = md.getConflictManager(new ModuleId("theirorg", "theirmodule2"));
         assertNull(cm);
+        
+        ExcludeRule[] rules = md.getAllExcludeRules();
+        assertNotNull(rules);
+        assertEquals(2, rules.length);
+        assertEquals(GlobPatternMatcher.INSTANCE, rules[0].getMatcher());
+        assertEquals(ExactPatternMatcher.INSTANCE, rules[1].getMatcher());
+        assertEquals(Arrays.asList(new String[] {"myconf1"}), 
Arrays.asList(rules[0].getConfigurations()));
+        assertEquals(Arrays.asList(new String[] {"myconf1", "myconf2", 
"myconf3", "myconf4","myoldconf"}), 
Arrays.asList(rules[1].getConfigurations()));
     }
 
     public void testBug60() throws Exception {

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-update.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-update.xml?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-update.xml
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test-update.xml
 Tue Apr  3 10:45:54 2007
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<?xml-stylesheet type="text/xsl" 
href="http://www.jayasoft.fr/org/ivyrep/ivy-doc.xsl";?>
+<?xml-stylesheet type="text/xsl" href="http://www.somesite.com/ivy-doc.xsl";?>
 <!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
@@ -19,7 +19,7 @@
    under the License.    
 -->
 <!-- A comment before the first tag -->
-<ivy-module version="1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd";>
+<ivy-module version="2.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd";>
        <!-- A comment with accent é & special characters -->
        <info organisation="myorg"
               module="mymodule"
@@ -101,7 +101,11 @@
                <dependency org="yourorg" name="yourmodule11" rev="11.1" 
conf="*->@"/>
        </dependencies>
        <conflicts>
-               <manager org="yourorg" module=".*" name="all"/>
+               <manager org="yourorg" module=".*" name="all" matcher="regexp"/>
                <manager org="theirorg" module="theirmodule1" rev="1.0, 1.1"/>
        </conflicts>
+       <exclude>
+               <rule module="*servlet*" matcher="glob" conf="myconf1" /> 
+               <rule org="acme" module="test" artifact="test" type="source" 
ext="jar" /> 
+       </exclude>
 </ivy-module>

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test.xml?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test.xml 
(original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/test.xml 
Tue Apr  3 10:45:54 2007
@@ -1,5 +1,4 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<?xml-stylesheet type="text/xsl" 
href="http://www.jayasoft.fr/org/ivyrep/ivy-doc.xsl";?>
 <!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
@@ -18,7 +17,7 @@
    specific language governing permissions and limitations
    under the License.    
 -->
-<ivy-module version="1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd";>
+<ivy-module version="2.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd";>
        <info organisation="myorg"
               module="mymodule"
               revision="myrev"
@@ -98,7 +97,11 @@
                <dependency org="yourorg" name="yourmodule11" rev="11.1" 
conf="*->@"/>
        </dependencies>
        <conflicts>
-               <manager org="yourorg" module=".*" name="all"/>
+               <manager org="yourorg" module=".*" name="all" matcher="regexp"/>
                <manager org="theirorg" module="theirmodule1" rev="1.0, 1.1"/>
        </conflicts>
+       <exclude>
+               <rule module="*servlet*" matcher="glob" conf="myconf1" /> 
+               <rule org="acme" module="test" artifact="test" type="source" 
ext="jar" /> 
+       </exclude>
 </ivy-module>

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/updated.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/updated.xml?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/updated.xml
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/parser/xml/updated.xml
 Tue Apr  3 10:45:54 2007
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet type="text/xsl" 
href="http://www.jayasoft.fr/org/ivyrep/ivy-doc.xsl";?>
+<?xml-stylesheet type="text/xsl" href="http://www.somesite.com/ivy-doc.xsl";?>
 <!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
@@ -19,7 +19,7 @@
    under the License.    
 -->
 <!-- A comment before the first tag -->
-<ivy-module version="1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd";>
+<ivy-module version="2.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd";>
        <!-- A comment with accent é & special characters -->
        <info organisation="myorg" module="mymodule" revision="mynewrev" 
status="release" publication="20050322143254">
               
@@ -98,7 +98,11 @@
                <dependency org="yourorg" name="yourmodule11" rev="11.1" 
conf="*->@"/>
        </dependencies>
        <conflicts>
-               <manager org="yourorg" module=".*" name="all"/>
+               <manager org="yourorg" module=".*" name="all" matcher="regexp"/>
                <manager org="theirorg" module="theirmodule1" rev="1.0, 1.1"/>
        </conflicts>
+       <exclude>
+               <rule module="*servlet*" matcher="glob" conf="myconf1"/> 
+               <rule org="acme" module="test" artifact="test" type="source" 
ext="jar"/> 
+       </exclude>
 </ivy-module>

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/IBiblioResolverTest.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/IBiblioResolverTest.java?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/IBiblioResolverTest.java
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/IBiblioResolverTest.java
 Tue Apr  3 10:45:54 2007
@@ -29,6 +29,8 @@
 import org.apache.ivy.core.module.descriptor.DefaultArtifact;
 import 
org.apache.ivy.core.module.descriptor.DefaultDependencyArtifactDescriptor;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyDescriptor;
+import org.apache.ivy.core.module.descriptor.DefaultIncludeRule;
+import org.apache.ivy.core.module.id.ArtifactId;
 import org.apache.ivy.core.module.id.ModuleRevisionId;
 import org.apache.ivy.core.report.ArtifactDownloadReport;
 import org.apache.ivy.core.report.DownloadReport;
@@ -214,8 +216,8 @@
         
         ModuleRevisionId mrid = ModuleRevisionId.newInstance("apache", 
"nanning", "0.9");
         DefaultDependencyDescriptor dd = new DefaultDependencyDescriptor(mrid, 
false);
-        dd.addDependencyArtifactIncludes("default", new 
DefaultDependencyArtifactDescriptor(dd, "nanning-profiler", "jar", "jar", true, 
ExactPatternMatcher.INSTANCE));
-        dd.addDependencyArtifactIncludes("default", new 
DefaultDependencyArtifactDescriptor(dd, "nanning-trace", "jar", "jar", true, 
ExactPatternMatcher.INSTANCE));
+        dd.addIncludeRule("default", new DefaultIncludeRule(new 
ArtifactId(mrid.getModuleId(), "nanning-profiler", "jar", "jar"), 
ExactPatternMatcher.INSTANCE, null));
+        dd.addIncludeRule("default", new DefaultIncludeRule(new 
ArtifactId(mrid.getModuleId(), "nanning-trace", "jar", "jar"), 
ExactPatternMatcher.INSTANCE, null));
         ResolvedModuleRevision rmr = resolver.getDependency(dd, _data);
         assertNotNull(rmr);
         assertEquals(mrid, rmr.getId());

Modified: 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/URLResolverTest.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/URLResolverTest.java?view=diff&rev=525217&r1=525216&r2=525217
==============================================================================
--- 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/URLResolverTest.java
 (original)
+++ 
incubator/ivy/core/trunk/test/java/org/apache/ivy/plugins/resolver/URLResolverTest.java
 Tue Apr  3 10:45:54 2007
@@ -29,6 +29,8 @@
 import org.apache.ivy.core.module.descriptor.DefaultArtifact;
 import 
org.apache.ivy.core.module.descriptor.DefaultDependencyArtifactDescriptor;
 import org.apache.ivy.core.module.descriptor.DefaultDependencyDescriptor;
+import org.apache.ivy.core.module.descriptor.DefaultIncludeRule;
+import org.apache.ivy.core.module.id.ArtifactId;
 import org.apache.ivy.core.module.id.ModuleRevisionId;
 import org.apache.ivy.core.report.ArtifactDownloadReport;
 import org.apache.ivy.core.report.DownloadReport;
@@ -191,8 +193,8 @@
         
         ModuleRevisionId mrid = ModuleRevisionId.newInstance("apache", 
"nanning", "0.9");
         DefaultDependencyDescriptor dd = new DefaultDependencyDescriptor(mrid, 
false);
-        dd.addDependencyArtifactIncludes("default", new 
DefaultDependencyArtifactDescriptor(dd, "nanning-profiler", "jar", "jar", true, 
ExactPatternMatcher.INSTANCE));
-        dd.addDependencyArtifactIncludes("default", new 
DefaultDependencyArtifactDescriptor(dd, "nanning-trace", "jar", "jar", true, 
ExactPatternMatcher.INSTANCE));
+        dd.addIncludeRule("default", new DefaultIncludeRule(new 
ArtifactId(mrid.getModuleId(), "nanning-profiler", "jar", "jar"), 
ExactPatternMatcher.INSTANCE, null));
+        dd.addIncludeRule("default", new DefaultIncludeRule(new 
ArtifactId(mrid.getModuleId(), "nanning-trace", "jar", "jar"), 
ExactPatternMatcher.INSTANCE, null));
         ResolvedModuleRevision rmr = resolver.getDependency(dd, _data);
         assertNotNull(rmr);
         assertEquals(mrid, rmr.getId());

Added: 
incubator/ivy/core/trunk/test/repositories/1/org2/mod2.6/ivys/ivy-0.11.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/repositories/1/org2/mod2.6/ivys/ivy-0.11.xml?view=auto&rev=525217
==============================================================================
--- incubator/ivy/core/trunk/test/repositories/1/org2/mod2.6/ivys/ivy-0.11.xml 
(added)
+++ incubator/ivy/core/trunk/test/repositories/1/org2/mod2.6/ivys/ivy-0.11.xml 
Tue Apr  3 10:45:54 2007
@@ -0,0 +1,31 @@
+<!--
+   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.    
+-->
+<ivy-module version="1.0">
+       <info organisation="org2"
+              module="mod2.6"
+              revision="0.11"
+              status="integration"
+       />
+       <dependencies>
+               <dependency name="mod2.1" rev="0.3" />
+       </dependencies>
+       <exclude>
+               <rule module="mod1.1" />
+       </exclude>
+</ivy-module>


Reply via email to