You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-commits@incubator.apache.org by ma...@apache.org on 2007/06/07 22:51:36 UTC

svn commit: r545340 - in /incubator/ivy/core/trunk: ./ src/java/org/apache/ivy/core/module/descriptor/ src/java/org/apache/ivy/plugins/parser/xml/ test/java/org/apache/ivy/core/resolve/

Author: maartenc
Date: Thu Jun  7 15:51:35 2007
New Revision: 545340

URL: http://svn.apache.org/viewvc?view=rev&rev=545340
Log: (empty)

Modified:
    incubator/ivy/core/trunk/CHANGES.txt
    incubator/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
    incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java
    incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java

Modified: incubator/ivy/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/CHANGES.txt?view=diff&rev=545340&r1=545339&r2=545340
==============================================================================
--- incubator/ivy/core/trunk/CHANGES.txt (original)
+++ incubator/ivy/core/trunk/CHANGES.txt Thu Jun  7 15:51:35 2007
@@ -57,6 +57,7 @@
 - IMPROVEMENT: Remove @author tags (thanks to Stephane Bailliez)
 - IMPROVEMENT: Remove use of deprecated elements in ivysettings.xml (IVY-505) (with contribution from Jan Materne)
 
+- FIX: <info> element of Ivy file in cache is not updated when using namespaces (IVY-516)
 - FIX: Retrieve Ant task ignores resolveId attribute (IVY-522) (thanks to Scott Goldstein)
 - FIX: The deprecated "keep" attribute on post resolve tasks causes an error (IVY-517)
 - FIX: Some circular dependencies not retrieved (IVY-400)

Modified: incubator/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java?view=diff&rev=545340&r1=545339&r2=545340
==============================================================================
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java (original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java Thu Jun  7 15:51:35 2007
@@ -469,9 +469,6 @@
     }
 
     public Namespace getNamespace() {
-        if (_namespace == null || !isNamespaceUseful()) {
-            return null;
-        }
         return _namespace;
     }
 

Modified: incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java
URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java?view=diff&rev=545340&r1=545339&r2=545340
==============================================================================
--- incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java (original)
+++ incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorUpdater.java Thu Jun  7 15:51:35 2007
@@ -187,13 +187,21 @@
             _context.push(qName);
             if ("info".equals(qName)) {
                 _organisation = substitute(settings, attributes.getValue("organisation"));
-                write("<info organisation=\"" + _organisation + "\" module=\""
-                        + substitute(settings, attributes.getValue("module")) + "\"");
-                if (revision != null) {
-                    write(" revision=\"" + revision + "\"");
-                } else if (attributes.getValue("revision") != null) {
-                    write(" revision=\"" + substitute(settings, attributes.getValue("revision"))
-                            + "\"");
+                String module = substitute(settings, attributes.getValue("module"));
+                String rev = revision;
+                if (rev == null) {
+                    rev = substitute(settings, attributes.getValue("revision"));
+                }
+                ModuleRevisionId localMid = ModuleRevisionId.newInstance(_organisation, module, null,
+                    rev, ExtendableItemHelper.getExtraAttributes(attributes,
+                        new String[] {"organisation", "module", "revision", "status", "publication", "namespace"}));
+                ModuleRevisionId systemMid = ns == null ? localMid : ns.getToSystemTransformer()
+                        .transform(localMid);
+
+                write("<info organisation=\"" + systemMid.getOrganisation() + "\" module=\""
+                        + systemMid.getName() + "\"");
+                if (systemMid.getRevision() != null) {
+                    write(" revision=\"" + systemMid.getRevision() + "\"");
                 }
                 if (status != null) {
                     write(" status=\"" + status + "\"");

Modified: incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java
URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java?view=diff&rev=545340&r1=545339&r2=545340
==============================================================================
--- incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java (original)
+++ incubator/ivy/core/trunk/test/java/org/apache/ivy/core/resolve/ResolveTest.java Thu Jun  7 15:51:35 2007
@@ -48,6 +48,7 @@
 import org.apache.ivy.plugins.circular.ErrorCircularDependencyStrategy;
 import org.apache.ivy.plugins.circular.IgnoreCircularDependencyStrategy;
 import org.apache.ivy.plugins.circular.WarnCircularDependencyStrategy;
+import org.apache.ivy.plugins.parser.xml.XmlModuleDescriptorParser;
 import org.apache.ivy.plugins.resolver.BasicResolver;
 import org.apache.ivy.plugins.resolver.DependencyResolver;
 import org.apache.ivy.plugins.resolver.DualResolver;
@@ -58,6 +59,8 @@
 import org.xml.sax.SAXException;
 import org.xml.sax.helpers.DefaultHandler;
 
+import sun.security.action.GetIntegerAction;
+
 /**
  *
  */
@@ -2887,9 +2890,16 @@
 
         assertTrue(ivy.getCacheManager(_cache).getResolvedIvyFileInCache(mrid).exists());
 
+        // ivy file
+        File ivyFile = ivy.getCacheManager(_cache).getIvyFileInCache(
+            ModuleRevisionId.newInstance("systemorg", "systemmod", "1.0"));
+        assertTrue(ivyFile.exists());
+        ModuleDescriptor parsedMD = XmlModuleDescriptorParser.getInstance()
+            .parseDescriptor(ivy.getSettings(), ivyFile.toURL(), true);
+        assertEquals("systemorg", parsedMD.getModuleRevisionId().getOrganisation());
+        assertEquals("systemmod", parsedMD.getModuleRevisionId().getName());
+
         // dependencies
-        assertTrue(ivy.getCacheManager(_cache).getIvyFileInCache(
-            ModuleRevisionId.newInstance("systemorg", "systemmod", "1.0")).exists());
         assertTrue(TestHelper.getArchiveFileInCache(ivy, _cache, "systemorg", "systemmod", "1.0",
             "A", "jar", "jar").exists());
     }