Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.operations/src/org/eclipse/equinox/internal/p2/operations/RequestFlexer.java')
-rw-r--r--bundles/org.eclipse.equinox.p2.operations/src/org/eclipse/equinox/internal/p2/operations/RequestFlexer.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/bundles/org.eclipse.equinox.p2.operations/src/org/eclipse/equinox/internal/p2/operations/RequestFlexer.java b/bundles/org.eclipse.equinox.p2.operations/src/org/eclipse/equinox/internal/p2/operations/RequestFlexer.java
index f12067d70..cb1a3ca70 100644
--- a/bundles/org.eclipse.equinox.p2.operations/src/org/eclipse/equinox/internal/p2/operations/RequestFlexer.java
+++ b/bundles/org.eclipse.equinox.p2.operations/src/org/eclipse/equinox/internal/p2/operations/RequestFlexer.java
@@ -221,6 +221,7 @@ public class RequestFlexer {
}
private IProvisioningPlan resolve(IProfileChangeRequest temporaryRequest, IProgressMonitor monitor) {
+ SubMonitor subMonitor = SubMonitor.convert(monitor, 1);
String explainPropertyBackup = null;
try {
temporaryRequest.setProfileProperty("_internal_user_defined_", "true"); //$NON-NLS-1$//$NON-NLS-2$
@@ -228,7 +229,7 @@ public class RequestFlexer {
explainPropertyBackup = provisioningContext.getProperty(EXPLANATION_ENABLEMENT);
provisioningContext.setProperty(EXPLANATION_ENABLEMENT, Boolean.FALSE.toString());
}
- return planner.getProvisioningPlan(temporaryRequest, provisioningContext, SubMonitor.convert(monitor));
+ return planner.getProvisioningPlan(temporaryRequest, provisioningContext, subMonitor.split(1));
} finally {
if (provisioningContext != null) {
if (explainPropertyBackup == null)
@@ -244,8 +245,10 @@ public class RequestFlexer {
private void loosenUpOriginalRequest(IProfileChangeRequest newRequest, IProfileChangeRequest originalRequest, IProgressMonitor monitor) {
//First deal with the IUs that are being added
Collection<IInstallableUnit> requestedAdditions = originalRequest.getAdditions();
+ SubMonitor subMonitor = SubMonitor.convert(monitor, requestedAdditions.size());
for (IInstallableUnit addedIU : requestedAdditions) {
- Collection<IInstallableUnit> potentialUpdates = allowDifferentVersion ? findAllVersionsAvailable(addedIU, monitor) : new ArrayList<IInstallableUnit>();
+ SubMonitor iterationMonitor = subMonitor.split(1);
+ Collection<IInstallableUnit> potentialUpdates = allowDifferentVersion ? findAllVersionsAvailable(addedIU, iterationMonitor) : new ArrayList<IInstallableUnit>();
foundDifferentVersionsForElementsToInstall = (foundDifferentVersionsForElementsToInstall || (potentialUpdates.size() == 0 ? false : true));
potentialUpdates.add(addedIU); //Make sure that we include the IU that we were initially trying to install
@@ -313,8 +316,9 @@ public class RequestFlexer {
}
private Collection<IInstallableUnit> findUpdates(IInstallableUnit iu, IProgressMonitor monitor) {
+ SubMonitor subMonitor = SubMonitor.convert(monitor, 1);
Collection<IInstallableUnit> availableUpdates = new HashSet<IInstallableUnit>();
- IQueryResult<IInstallableUnit> updatesAvailable = planner.updatesFor(iu, provisioningContext, SubMonitor.convert(monitor));
+ IQueryResult<IInstallableUnit> updatesAvailable = planner.updatesFor(iu, provisioningContext, subMonitor.split(1));
for (Iterator<IInstallableUnit> iterator = updatesAvailable.iterator(); iterator.hasNext();) {
availableUpdates.add(iterator.next());
}

Back to the top