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 2013/11/02 20:10:45 UTC
svn commit: r1538256 - in /ant/ivy/ivyde/trunk: doc/ doc/images/
org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/cp/
org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/
org.apache.ivyde.eclipse/src/java/org/apache/ivyde/inte...
Author: hibou
Date: Sat Nov 2 19:10:44 2013
New Revision: 1538256
URL: http://svn.apache.org/r1538256
Log:
IVYDE-334: support of global transitivity disabling for resolving dependency (thanks to Anton Zagorulko)
Added:
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml (with props)
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/jars/
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/jars/module-with-dep-1.4.jar (with props)
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/javadocs/
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/javadocs/module-with-dep-1.4.jar (with props)
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/sources/
ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/sources/module-with-dep-1.4.jar (with props)
ant/ivy/ivyde/trunk/test/not-transitive/ (with props)
ant/ivy/ivyde/trunk/test/not-transitive/.classpath (with props)
ant/ivy/ivyde/trunk/test/not-transitive/.project (with props)
ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml (with props)
ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml (with props)
ant/ivy/ivyde/trunk/test/not-transitive/src/
Modified:
ant/ivy/ivyde/trunk/doc/images/build_path_edit.jpg
ant/ivy/ivyde/trunk/doc/images/pref_classpath.jpg
ant/ivy/ivyde/trunk/doc/images/workspace.jpg
ant/ivy/ivyde/trunk/doc/preferences.html
ant/ivy/ivyde/trunk/doc/release-notes.html
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/cp/ClasspathSetup.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/CachedIvy.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/IvyDERuntimeClasspathEntryResolver.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/ClasspathEntriesResolver.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerConfAdapter.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerImpl.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerState.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/IvyResolver.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/ResolveRequest.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/retrieve/StandaloneRetrieveSetupState.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/ClasspathSetupEditor.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/IvyDEPreferenceStoreHelper.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceConstants.java
ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceInitializer.java
ant/ivy/ivyde/trunk/test/multiple-containers/.project
Modified: ant/ivy/ivyde/trunk/doc/images/build_path_edit.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/doc/images/build_path_edit.jpg?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
Binary files - no diff available.
Modified: ant/ivy/ivyde/trunk/doc/images/pref_classpath.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/doc/images/pref_classpath.jpg?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
Binary files - no diff available.
Modified: ant/ivy/ivyde/trunk/doc/images/workspace.jpg
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/doc/images/workspace.jpg?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
Binary files - no diff available.
Modified: ant/ivy/ivyde/trunk/doc/preferences.html
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/doc/preferences.html?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/doc/preferences.html (original)
+++ ant/ivy/ivyde/trunk/doc/preferences.html Sat Nov 2 19:10:44 2013
@@ -61,8 +61,10 @@ The global configuration can be found in
<center><img src="images/pref_classpath.jpg"/></center>
-<h4>Resolve dependencies in workpace:</h4>
+<h4>Resolve dependencies in workspace:</h4>
<p>Apache IvyDE allows Ivy dependencies between projects in the workspace to be realized through project references rather than jars from the repository. See the <a href="cpc/workspace.html">documentation</a> for further information on this feature.</p>
+<h4>Resolve dependencies transitively</h4>
+<p>If unchecked, the dependencies will be resolved with transitivity disabled regardless to the settings in ivy.xml</p>
<h4>Read OSGi metadata:</h4>
<p>If your classpath is based on jars which are actually OSGi bundles, checking this option will make IvyDE read the jar manifests and setup the specific OSGi visibility constraints.</p>
<h4>Accepted types:</h4>
Modified: ant/ivy/ivyde/trunk/doc/release-notes.html
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/doc/release-notes.html?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/doc/release-notes.html (original)
+++ ant/ivy/ivyde/trunk/doc/release-notes.html Sat Nov 2 19:10:44 2013
@@ -122,6 +122,7 @@ Here is the list of people who have cont
<li>Nathan Summers</li>
<li>Phillip Webb</li>
<li>James Wilkins</li>
+<li>Anton Zagorulko</li>
</ul>
<h1><a name="changes"></a>List of Changes in this Release</h1>
@@ -136,6 +137,7 @@ List of changes since <a href="/ivy/ivyd
<li>NEW: Allow to set the Ivy user directory globally or project by project (IVYDE-311)</li>
<li>NEW: Add support for the OSGi access rules</li>
<li>NEW: Source and Javadoc attachements can now be edited jar by jar</li>
+ <li>NEW: Support of global transitivity disabling for resolving dependency (IVYDE-334) (thanks to Anton Zagorulko)</li>
</ul>
<ul>
<li>IMPROVE: The properties file paths can now be edited</li>
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/cp/ClasspathSetup.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/cp/ClasspathSetup.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/cp/ClasspathSetup.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/eclipse/cp/ClasspathSetup.java Sat Nov 2 19:10:44 2013
@@ -34,6 +34,8 @@ public class ClasspathSetup {
private boolean readOSGiMetadata;
+ private boolean transitiveResolve = true;
+
/**
* Default constructor
*/
@@ -48,6 +50,7 @@ public class ClasspathSetup {
this.retrievedClasspath = setup.retrievedClasspath;
this.retrieveSetup.set(setup.retrieveSetup);
this.readOSGiMetadata = setup.readOSGiMetadata;
+ this.transitiveResolve = setup.transitiveResolve;
}
public boolean isResolveInWorkspace() {
@@ -97,4 +100,12 @@ public class ClasspathSetup {
public void setReadOSGiMetadata(boolean readOSGiMetadata) {
this.readOSGiMetadata = readOSGiMetadata;
}
+
+ public boolean isTransitiveResolve() {
+ return transitiveResolve;
+ }
+
+ public void setTransitiveResolve(boolean transitiveResolve) {
+ this.transitiveResolve = transitiveResolve;
+ }
}
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/CachedIvy.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/CachedIvy.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/CachedIvy.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/CachedIvy.java Sat Nov 2 19:10:44 2013
@@ -92,6 +92,8 @@ public abstract class CachedIvy {
protected abstract boolean isResolveInWorkspace();
+ protected abstract boolean isTransitiveResolve();
+
public Ivy getCachedIvy() {
if (ivy != null) {
return ivy;
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/IvyDERuntimeClasspathEntryResolver.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/IvyDERuntimeClasspathEntryResolver.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/IvyDERuntimeClasspathEntryResolver.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/IvyDERuntimeClasspathEntryResolver.java Sat Nov 2 19:10:44 2013
@@ -94,7 +94,9 @@ public class IvyDERuntimeClasspathEntryR
ResolveRequest request = new ResolveRequest(resolver, ivycp.getState());
request.setForceFailOnError(true);
request.setInWorkspace(ivycp.getConf().getInheritedClasspathSetup()
- .isResolveInWorkspace());
+ .isResolveInWorkspace());
+ request.setTransitive(ivycp.getConf().getInheritedClasspathSetup()
+ .isTransitiveResolve());
IvyResolveJob resolveJob = IvyPlugin.getDefault().getIvyResolveJob();
IStatus status = resolveJob.launchRequest(request, new NullProgressMonitor());
if (status.getCode() != IStatus.OK) {
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/ClasspathEntriesResolver.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/ClasspathEntriesResolver.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/ClasspathEntriesResolver.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/ClasspathEntriesResolver.java Sat Nov 2 19:10:44 2013
@@ -52,6 +52,7 @@ public class ClasspathEntriesResolver ex
this.conf = ivycp.getConf();
setUsePreviousResolveIfExist(ivycp.getConf().getInheritedAdvancedSetup().isUseExtendedResolveId());
setUsePreviousResolveIfExist(usePreviousResolveIfExist);
+ setTransitiveResolve(conf.getInheritedClasspathSetup().isTransitiveResolve());
if (conf.getInheritedClasspathSetup().isRetrievedClasspath()) {
RetrieveSetup setup = conf.getInheritedClasspathSetup().getRetrieveSetup();
setRetrievePattern(setup.getRetrievePattern());
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerConfAdapter.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerConfAdapter.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerConfAdapter.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerConfAdapter.java Sat Nov 2 19:10:44 2013
@@ -182,6 +182,9 @@ public final class IvyClasspathContainer
} else if (parameter[0].equals("resolveInWorkspace")) {
classpathSetup.setResolveInWorkspace(Boolean.valueOf(value).booleanValue());
conf.setClassthProjectSpecific(true);
+ } else if (parameter[0].equals("transitiveResolve")) {
+ classpathSetup.setTransitiveResolve(Boolean.valueOf(value).booleanValue());
+ conf.setClassthProjectSpecific(true);
} else if (parameter[0].equals("readOSGiMetadata")) {
classpathSetup.setReadOSGiMetadata(Boolean.valueOf(value).booleanValue());
conf.setClassthProjectSpecific(true);
@@ -413,6 +416,7 @@ public final class IvyClasspathContainer
append(path, "acceptedTypes", setup.getAcceptedTypes());
append(path, "alphaOrder", setup.isAlphaOrder());
append(path, "resolveInWorkspace", setup.isResolveInWorkspace());
+ append(path, "transitiveResolve", setup.isTransitiveResolve());
append(path, "readOSGiMetadata", setup.isReadOSGiMetadata());
append(path, "retrievedClasspath", setup.isRetrievedClasspath());
if (setup.isRetrievedClasspath()) {
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerImpl.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerImpl.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerImpl.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerImpl.java Sat Nov 2 19:10:44 2013
@@ -124,6 +124,7 @@ public class IvyClasspathContainerImpl i
ResolveRequest request = new ResolveRequest(new IvyClasspathResolver(this,
usePreviousResolveIfExist), getState());
request.setInWorkspace(getConf().getInheritedClasspathSetup().isResolveInWorkspace());
+ request.setTransitive(getConf().getInheritedClasspathSetup().isTransitiveResolve());
IvyResolveJob resolveJob = IvyPlugin.getDefault().getIvyResolveJob();
if (monitor != null) {
return resolveJob.launchRequest(request, monitor);
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerState.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerState.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerState.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/cpcontainer/IvyClasspathContainerState.java Sat Nov 2 19:10:44 2013
@@ -70,6 +70,10 @@ public class IvyClasspathContainerState
return conf.getInheritedClasspathSetup().isResolveInWorkspace();
}
+ protected boolean isTransitiveResolve() {
+ return conf.getInheritedClasspathSetup().isTransitiveResolve();
+ }
+
public String toString() {
return conf.toString();
}
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/IvyResolver.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/IvyResolver.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/IvyResolver.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/IvyResolver.java Sat Nov 2 19:10:44 2013
@@ -81,6 +81,8 @@ public class IvyResolver {
private boolean useCacheOnly = IvyPlugin.getPreferenceStoreHelper().isOffline();
private boolean useExtendedResolveId = false;
+
+ private boolean transitiveResolve = true;
public IvyResolver(String ivyXmlPath, List confInput, IProject project) {
this.ivyXmlPath = ivyXmlPath;
@@ -108,6 +110,10 @@ public class IvyResolver {
this.useCacheOnly = useCacheOnly;
}
+ public void setTransitiveResolve(boolean transitiveResolve) {
+ this.transitiveResolve = transitiveResolve;
+ }
+
public String getIvyXmlPath() {
return ivyXmlPath;
}
@@ -245,6 +251,7 @@ public class IvyResolver {
resolveOption.setValidate(ivy.getSettings().doValidate());
resolveOption.setUseCacheOnly(useCacheOnly);
resolveOption.setResolveId(IvyClasspathUtil.buildResolveId(useExtendedResolveId, md));
+ resolveOption.setTransitive(transitiveResolve);
ResolveReport report = ivy.getResolveEngine().resolve(md, resolveOption);
if (report.hasError()) {
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/ResolveRequest.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/ResolveRequest.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/ResolveRequest.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/resolve/ResolveRequest.java Sat Nov 2 19:10:44 2013
@@ -27,6 +27,8 @@ public class ResolveRequest {
private boolean inWorkspace = false;
+ private boolean transitive = true;
+
private boolean forceFailOnError = false;
private boolean resolveFailed = false;
@@ -60,6 +62,14 @@ public class ResolveRequest {
return inWorkspace;
}
+ public void setTransitive(boolean transitive) {
+ this.transitive = transitive;
+ }
+
+ public boolean isTransitive() {
+ return transitive;
+ }
+
public void setResolveFailed(boolean resolveFailed) {
this.resolveFailed = resolveFailed;
}
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/retrieve/StandaloneRetrieveSetupState.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/retrieve/StandaloneRetrieveSetupState.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/retrieve/StandaloneRetrieveSetupState.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/retrieve/StandaloneRetrieveSetupState.java Sat Nov 2 19:10:44 2013
@@ -60,4 +60,7 @@ public class StandaloneRetrieveSetupStat
return setup.isResolveInWorkspace();
}
+ protected boolean isTransitiveResolve() {
+ return false;
+ }
}
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/ClasspathSetupEditor.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/ClasspathSetupEditor.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/ClasspathSetupEditor.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/ClasspathSetupEditor.java Sat Nov 2 19:10:44 2013
@@ -42,6 +42,8 @@ public class ClasspathSetupEditor extend
+ "Example: jar, zip";
private Button resolveInWorkspaceCheck;
+
+ private Button transitiveResolveCheck;
private Label alphaOrderLabel;
@@ -74,6 +76,13 @@ public class ClasspathSetupEditor extend
resolveInWorkspaceCheck
.setToolTipText("Will replace jars on the classpath with workspace projects");
+ transitiveResolveCheck = new Button(this, SWT.CHECK);
+ transitiveResolveCheck.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true,
+ false, 2, 1));
+ transitiveResolveCheck.setText("Resolve dependencies transitively");
+ transitiveResolveCheck
+ .setToolTipText("If uncheck, will resolve dependency with transitivity disabled regardless to the settings in ivy.xml");
+
readOSGiMetadataCheck = new Button(this, SWT.CHECK);
readOSGiMetadataCheck.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, false,
2, 1));
@@ -128,6 +137,7 @@ public class ClasspathSetupEditor extend
public void init(ClasspathSetup setup) {
resolveInWorkspaceCheck.setSelection(setup.isResolveInWorkspace());
+ transitiveResolveCheck.setSelection(setup.isTransitiveResolve());
readOSGiMetadataCheck.setSelection(setup.isReadOSGiMetadata());
acceptedTypesText.setText(IvyClasspathUtil.concat(setup.getAcceptedTypes()));
alphaOrderCheck.select(setup.isAlphaOrder() ? 1 : 0);
@@ -140,6 +150,7 @@ public class ClasspathSetupEditor extend
public ClasspathSetup getClasspathSetup() {
ClasspathSetup setup = new ClasspathSetup();
setup.setResolveInWorkspace(resolveInWorkspaceCheck.getSelection());
+ setup.setTransitiveResolve(transitiveResolveCheck.getSelection());
setup.setReadOSGiMetadata(readOSGiMetadataCheck.getSelection());
setup.setAcceptedTypes(IvyClasspathUtil.split(acceptedTypesText.getText()));
setup.setAlphaOrder(alphaOrderCheck.getSelectionIndex() == 1);
@@ -152,6 +163,7 @@ public class ClasspathSetupEditor extend
public void setEnabled(boolean enabled) {
resolveInWorkspaceCheck.setEnabled(enabled);
+ transitiveResolveCheck.setEnabled(enabled);
readOSGiMetadataCheck.setEnabled(osgiAvailable && enabled);
acceptedTypesLabel.setEnabled(enabled);
acceptedTypesText.setEnabled(enabled);
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/IvyDEPreferenceStoreHelper.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/IvyDEPreferenceStoreHelper.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/IvyDEPreferenceStoreHelper.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/IvyDEPreferenceStoreHelper.java Sat Nov 2 19:10:44 2013
@@ -74,6 +74,7 @@ public class IvyDEPreferenceStoreHelper
public ClasspathSetup getClasspathSetup() {
ClasspathSetup setup = new ClasspathSetup();
setup.setResolveInWorkspace(prefStore.getBoolean(PreferenceConstants.RESOLVE_IN_WORKSPACE));
+ setup.setTransitiveResolve(prefStore.getBoolean(PreferenceConstants.TRANSITIVE_RESOLVE));
setup.setReadOSGiMetadata(prefStore.getBoolean(PreferenceConstants.READ_OSGI_METADATA));
setup.setAcceptedTypes(IvyClasspathUtil.split(prefStore
.getString(PreferenceConstants.ACCEPTED_TYPES)));
@@ -92,6 +93,7 @@ public class IvyDEPreferenceStoreHelper
public void setClasspathSetup(ClasspathSetup setup) {
prefStore.setValue(PreferenceConstants.RESOLVE_IN_WORKSPACE, setup.isResolveInWorkspace());
+ prefStore.setValue(PreferenceConstants.TRANSITIVE_RESOLVE, setup.isTransitiveResolve());
prefStore.setValue(PreferenceConstants.READ_OSGI_METADATA, setup.isReadOSGiMetadata());
prefStore.setValue(PreferenceConstants.ACCEPTED_TYPES,
IvyClasspathUtil.concat(setup.getAcceptedTypes()));
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceConstants.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceConstants.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceConstants.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceConstants.java Sat Nov 2 19:10:44 2013
@@ -70,6 +70,8 @@ public final class PreferenceConstants {
public static final String ALPHABETICAL_ORDER = "order.alphabetical";
public static final String RESOLVE_IN_WORKSPACE = "resolveInWorkspace";
+
+ public static final String TRANSITIVE_RESOLVE = "transitiveResolve";
public static final String READ_OSGI_METADATA = "readOSGIMetadata";
Modified: ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceInitializer.java
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceInitializer.java?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceInitializer.java (original)
+++ ant/ivy/ivyde/trunk/org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/preferences/PreferenceInitializer.java Sat Nov 2 19:10:44 2013
@@ -64,6 +64,8 @@ public class PreferenceInitializer exten
public static final boolean DEFAULT_RESOLVE_IN_WORKSPACE = false;
+ public static final boolean DEFAULT_TRANSITIVE_RESOLVE = true;
+
private static final boolean DEFAULT_READ_OSGI_METADATA = false;
public static final boolean DEFAULT_RETRIEVED_CLASSPATH = false;
@@ -88,6 +90,7 @@ public class PreferenceInitializer exten
DEFAULT_CLASSPATH_SETUP.setAcceptedTypes(IvyClasspathUtil.split(DEFAULT_ACCEPTED_TYPES));
DEFAULT_CLASSPATH_SETUP.setAlphaOrder(DEFAULT_ALPHABETICAL_ORDER);
DEFAULT_CLASSPATH_SETUP.setResolveInWorkspace(DEFAULT_RESOLVE_IN_WORKSPACE);
+ DEFAULT_CLASSPATH_SETUP.setTransitiveResolve(DEFAULT_TRANSITIVE_RESOLVE);
DEFAULT_CLASSPATH_SETUP.setReadOSGiMetadata(DEFAULT_READ_OSGI_METADATA);
DEFAULT_CLASSPATH_SETUP.setRetrievedClasspath(DEFAULT_RETRIEVED_CLASSPATH);
DEFAULT_CLASSPATH_SETUP.setRetrieveSetup(DEFAULT_RETRIEVED_CLASSPATH_SETUP);
@@ -170,6 +173,7 @@ public class PreferenceInitializer exten
store.setDefault(PreferenceConstants.ALPHABETICAL_ORDER, DEFAULT_ALPHABETICAL_ORDER);
store.setDefault(PreferenceConstants.RESOLVE_IN_WORKSPACE, DEFAULT_RESOLVE_IN_WORKSPACE);
+ store.setDefault(PreferenceConstants.TRANSITIVE_RESOLVE, DEFAULT_TRANSITIVE_RESOLVE);
store.setDefault(PreferenceConstants.READ_OSGI_METADATA, DEFAULT_READ_OSGI_METADATA);
store.setDefault(PreferenceConstants.RESOLVE_BEFORE_LAUNCH, DEFAULT_RESOLVE_BEFORE_LAUNCH);
store.setDefault(PreferenceConstants.PROPERTY_FILES, DEFAULT_PROPERTY_FILES);
Added: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml?rev=1538256&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml (added)
+++ ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml Sat Nov 2 19:10:44 2013
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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="myorg"
+ module="module-with-dep"
+ revision="1.4"
+ status="release"
+ publication="20080811152510"
+ default="true"
+ />
+ <configurations>
+ <conf name="default" visibility="public"/>
+ </configurations>
+ <publications>
+ <artifact name="module-with-dep" type="jar" ext="jar" conf="default"/>
+ <artifact name="module-with-dep" type="source" ext="jar" conf="default"/>
+ <artifact name="module-with-dep" type="javadoc" ext="jar" conf="default"/>
+ </publications>
+ <dependencies>
+ <dependency org="myorg" name="mymodule" rev="1.1" />
+ </dependencies>
+</ivy-module>
Propchange: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision Author HeadURL Id
Propchange: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/ivy-1.4.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/jars/module-with-dep-1.4.jar
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/jars/module-with-dep-1.4.jar?rev=1538256&view=auto
==============================================================================
Binary file - no diff available.
Propchange: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/jars/module-with-dep-1.4.jar
------------------------------------------------------------------------------
svn:mime-type = application/jar
Added: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/javadocs/module-with-dep-1.4.jar
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/javadocs/module-with-dep-1.4.jar?rev=1538256&view=auto
==============================================================================
Binary file - no diff available.
Propchange: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/javadocs/module-with-dep-1.4.jar
------------------------------------------------------------------------------
svn:mime-type = application/jar
Added: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/sources/module-with-dep-1.4.jar
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/sources/module-with-dep-1.4.jar?rev=1538256&view=auto
==============================================================================
Binary file - no diff available.
Propchange: ant/ivy/ivyde/trunk/test/fakerepo/myorg/module-with-dep/sources/module-with-dep-1.4.jar
------------------------------------------------------------------------------
svn:mime-type = application/jar
Modified: ant/ivy/ivyde/trunk/test/multiple-containers/.project
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/multiple-containers/.project?rev=1538256&r1=1538255&r2=1538256&view=diff
==============================================================================
--- ant/ivy/ivyde/trunk/test/multiple-containers/.project (original)
+++ ant/ivy/ivyde/trunk/test/multiple-containers/.project Sat Nov 2 19:10:44 2013
@@ -1,22 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--
- 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.
--->
<projectDescription>
<name>ivydetest-multiple-containers</name>
<comment></comment>
@@ -31,5 +13,6 @@
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.apache.ivyde.eclipse.ivynature</nature>
</natures>
</projectDescription>
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sat Nov 2 19:10:44 2013
@@ -0,0 +1 @@
+bin
Added: ant/ivy/ivyde/trunk/test/not-transitive/.classpath
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/not-transitive/.classpath?rev=1538256&view=auto
==============================================================================
Binary file - no diff available.
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/.classpath
------------------------------------------------------------------------------
svn:mime-type = application/xml
Added: ant/ivy/ivyde/trunk/test/not-transitive/.project
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/not-transitive/.project?rev=1538256&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/test/not-transitive/.project (added)
+++ ant/ivy/ivyde/trunk/test/not-transitive/.project Sat Nov 2 19:10:44 2013
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+<projectDescription>
+ <name>ivydetest-not-transitive</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>org.apache.ivyde.eclipse.ivynature</nature>
+ </natures>
+</projectDescription>
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/.project
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/.project
------------------------------------------------------------------------------
svn:keywords = Date Revision Author HeadURL Id
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/.project
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml?rev=1538256&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml (added)
+++ ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml Sat Nov 2 19:10:44 2013
@@ -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="org.apache.ivyde" module="ivytest-not-transitive">
+ <description>
+ Project configure to resolve not transitively
+ </description>
+ </info>
+ <configurations>
+ <conf name="default" />
+ </configurations>
+ <dependencies>
+ <dependency org="myorg" name="module-with-dep" rev="1.4" conf="default" />
+ </dependencies>
+</ivy-module>
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision Author HeadURL Id
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/ivy.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml
URL: http://svn.apache.org/viewvc/ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml?rev=1538256&view=auto
==============================================================================
--- ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml (added)
+++ ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml Sat Nov 2 19:10:44 2013
@@ -0,0 +1,28 @@
+<!--
+ 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.
+-->
+<ivysettings>
+ <caches defaultCacheDir="${ivy.settings.dir}/../cache-fakerepo" useOrigin="false" />
+ <settings defaultResolver="fakerepo" checkUpToDate="false" />
+ <resolvers>
+ <filesystem name="fakerepo">
+ <ivy pattern="${ivy.settings.dir}/../fakerepo/[organisation]/[module]/ivy-[revision].xml"/>
+ <artifact pattern="${ivy.settings.dir}/../fakerepo/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
+ </filesystem>
+ </resolvers>
+</ivysettings>
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision Author HeadURL Id
Propchange: ant/ivy/ivyde/trunk/test/not-transitive/ivysettings.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml