You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by hi...@apache.org on 2012/01/15 19:17:35 UTC

svn commit: r1231719 - in /ant/ivy/core/trunk/src/java/org/apache/ivy: osgi/repo/RepoDescriptorBasedResolver.java plugins/resolver/BasicResolver.java

Author: hibou
Date: Sun Jan 15 18:17:35 2012
New Revision: 1231719

URL: http://svn.apache.org/viewvc?rev=1231719&view=rev
Log:
A possible fix for the mixup between package requirement and bundle implementation

Modified:
    ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptorBasedResolver.java
    ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java

Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptorBasedResolver.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptorBasedResolver.java?rev=1231719&r1=1231718&r2=1231719&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptorBasedResolver.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptorBasedResolver.java Sun Jan 15 18:17:35 2012
@@ -225,6 +225,15 @@ public abstract class RepoDescriptorBase
         return new ResolvedResource(resource, artifact.getModuleRevisionId().getRevision());
     }
 
+    protected void checkModuleDescriptorRevision(ModuleDescriptor systemMd,
+            ModuleRevisionId systemMrid) {
+        String osgiAtt = systemMrid.getExtraAttribute(BundleInfoAdapter.EXTRA_ATTRIBUTE_NAME);
+        // only check revision if we're searching for a bundle (package and bundle have different version
+        if (osgiAtt == null || osgiAtt.equals(BundleInfo.BUNDLE_TYPE)) {
+            super.checkModuleDescriptorRevision(systemMd, systemMrid);
+        }
+    }
+
     protected Collection/* <String> */filterNames(Collection/* <String> */names) {
         getSettings().filterIgnore(names);
         return names;

Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java?rev=1231719&r1=1231718&r2=1231719&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java Sun Jan 15 18:17:35 2012
@@ -414,7 +414,7 @@ public abstract class BasicResolver exte
         }
     }
 
-    private void checkModuleDescriptorRevision(ModuleDescriptor systemMd,
+    protected void checkModuleDescriptorRevision(ModuleDescriptor systemMd,
             ModuleRevisionId systemMrid) {
         if (!getSettings().getVersionMatcher().accept(systemMrid, systemMd)) {
             throw new UnresolvedDependencyException("\t" + getName()