You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by xa...@apache.org on 2008/03/24 19:58:56 UTC
svn commit: r640519 -
/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java
Author: xavier
Date: Mon Mar 24 11:58:53 2008
New Revision: 640519
URL: http://svn.apache.org/viewvc?rev=640519&view=rev
Log:
Attempt to fix IVY-773 (Extra Attributes are not available to resolver after resolve if cache was empty)
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/resolver/BasicResolver.java
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=640519&r1=640518&r2=640519&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 Mon Mar 24 11:58:53 2008
@@ -397,25 +397,29 @@
}
private void resolveAndCheckRevision(ModuleDescriptor systemMd,
- ModuleRevisionId systemMrid, ResolvedResource ivyRef, boolean isDynamic) {
- ModuleRevisionId resolvedMrid = systemMrid;
- if (isDynamic) {
- resolvedMrid = systemMd.getResolvedModuleRevisionId();
- if (resolvedMrid.getRevision() == null
- || resolvedMrid.getRevision().length() == 0) {
- if (ivyRef.getRevision() == null || ivyRef.getRevision().length() == 0) {
- resolvedMrid = ModuleRevisionId.newInstance(resolvedMrid, "working@"
- + getName());
- } else {
- resolvedMrid = ModuleRevisionId.newInstance(resolvedMrid, ivyRef
- .getRevision());
- }
+ ModuleRevisionId dependencyConstraint, ResolvedResource ivyRef, boolean isDynamic) {
+ // we get the resolved module revision id from the descriptor: it may contain extra
+ // attributes that were not included in the dependency constraint
+ ModuleRevisionId resolvedMrid = systemMd.getResolvedModuleRevisionId();
+ if (resolvedMrid.getRevision() == null
+ || resolvedMrid.getRevision().length() == 0) {
+ if (!isDynamic) {
+ resolvedMrid = ModuleRevisionId.newInstance(
+ resolvedMrid, dependencyConstraint.getRevision());
+ } else if (ivyRef.getRevision() == null || ivyRef.getRevision().length() == 0) {
+ resolvedMrid = ModuleRevisionId.newInstance(resolvedMrid, "working@"
+ + getName());
+ } else {
+ resolvedMrid = ModuleRevisionId.newInstance(resolvedMrid, ivyRef
+ .getRevision());
}
+ }
+ if (isDynamic) {
Message.verbose("\t\t[" + toSystem(resolvedMrid).getRevision() + "] "
- + systemMrid.getModuleId());
+ + dependencyConstraint.getModuleId());
}
systemMd.setResolvedModuleRevisionId(resolvedMrid);
- checkModuleDescriptorRevision(systemMd, systemMrid);
+ checkModuleDescriptorRevision(systemMd, dependencyConstraint);
}
private String getRevision(ResolvedResource ivyRef, ModuleRevisionId askedMrid,