diff options
author | Pascal Rapicault | 2009-04-25 20:05:48 +0000 |
---|---|---|
committer | Pascal Rapicault | 2009-04-25 20:05:48 +0000 |
commit | f0ecd9748a00b33a3f30eb363ec7e8db65a31a51 (patch) | |
tree | 7165d75ea85dd547c7582501236ec492fa2bc35e /bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository | |
parent | 716248432af3621e86c77724d4d8d02da26a76be (diff) | |
download | rt.equinox.p2-f0ecd9748a00b33a3f30eb363ec7e8db65a31a51.tar.gz rt.equinox.p2-f0ecd9748a00b33a3f30eb363ec7e8db65a31a51.tar.xz rt.equinox.p2-f0ecd9748a00b33a3f30eb363ec7e8db65a31a51.zip |
Bug 273126 - p2.mirror app should have a mode to only slice platform dependent bundles
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository')
2 files changed, 10 insertions, 1 deletions
diff --git a/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/MirrorApplication.java b/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/MirrorApplication.java index a6b83492e..7e1ad6793 100644 --- a/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/MirrorApplication.java +++ b/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/MirrorApplication.java @@ -186,7 +186,7 @@ public class MirrorApplication extends AbstractApplication { private IQueryable slice(IProgressMonitor monitor) throws ProvisionException { if (slicingOptions == null) slicingOptions = new SlicingOptions(); - PermissiveSlicer slicer = new PermissiveSlicer(getCompositeMetadataRepository(), slicingOptions.getFilter(), slicingOptions.includeOptionalDependencies(), slicingOptions.isEverythingGreedy(), slicingOptions.forceFilterTo(), slicingOptions.considerStrictDependencyOnly()); + PermissiveSlicer slicer = new PermissiveSlicer(getCompositeMetadataRepository(), slicingOptions.getFilter(), slicingOptions.includeOptionalDependencies(), slicingOptions.isEverythingGreedy(), slicingOptions.forceFilterTo(), slicingOptions.considerStrictDependencyOnly(), slicingOptions.followOnlyFilteredRequirements()); IQueryable slice = slicer.slice((IInstallableUnit[]) sourceIUs.toArray(new IInstallableUnit[sourceIUs.size()]), monitor); if (slicer.getStatus().getSeverity() != IStatus.OK) { mirrorLog.log(slicer.getStatus()); diff --git a/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/SlicingOptions.java b/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/SlicingOptions.java index 19566a5a5..94e52f2a4 100644 --- a/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/SlicingOptions.java +++ b/bundles/org.eclipse.equinox.p2.repository.tools/src/org/eclipse/equinox/p2/internal/repository/tools/SlicingOptions.java @@ -17,6 +17,7 @@ public class SlicingOptions { private boolean everythingGreedy = true; private boolean forceFilterTo = true; private boolean considerStrictDependencyOnly = false; + private boolean followOnlyFilteredRequirements = false; private Dictionary filter = null; public boolean includeOptionalDependencies() { @@ -58,4 +59,12 @@ public class SlicingOptions { public void setFilter(Dictionary filter) { this.filter = filter; } + + public void followOnlyFilteredRequirements(boolean onlyFiltered) { + this.followOnlyFilteredRequirements = onlyFiltered; + } + + public boolean followOnlyFilteredRequirements() { + return followOnlyFilteredRequirements; + } } |