Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSusan Franklin2009-04-10 17:58:55 +0000
committerSusan Franklin2009-04-10 17:58:55 +0000
commitb4fc254ab0179360f0d1f228c7ac51690ed97284 (patch)
treea56f9f16aa674cb06553c4c0683b02c867b0bfa6 /bundles/org.eclipse.equinox.p2.ui.sdk.scheduler
parent24b91584093dec9371bd473e11a211bf7ee486de (diff)
downloadrt.equinox.p2-b4fc254ab0179360f0d1f228c7ac51690ed97284.tar.gz
rt.equinox.p2-b4fc254ab0179360f0d1f228c7ac51690ed97284.tar.xz
rt.equinox.p2-b4fc254ab0179360f0d1f228c7ac51690ed97284.zip
Bug 268205 - [ui] Accepting an update causes plan to be recomputed
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.ui.sdk.scheduler')
-rw-r--r--bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/AutomaticUpdateAction.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/AutomaticUpdateAction.java b/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/AutomaticUpdateAction.java
index 69389a488..865819136 100644
--- a/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/AutomaticUpdateAction.java
+++ b/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/AutomaticUpdateAction.java
@@ -13,13 +13,17 @@ package org.eclipse.equinox.internal.p2.ui.sdk.scheduler;
import java.util.ArrayList;
import org.eclipse.core.runtime.IStatus;
+import org.eclipse.equinox.internal.provisional.p2.core.ProvisionException;
import org.eclipse.equinox.internal.provisional.p2.director.ProvisioningPlan;
+import org.eclipse.equinox.internal.provisional.p2.engine.IProfile;
+import org.eclipse.equinox.internal.provisional.p2.engine.IProfileRegistry;
import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit;
import org.eclipse.equinox.internal.provisional.p2.ui.ProvUI;
import org.eclipse.equinox.internal.provisional.p2.ui.ProvUIProvisioningListener;
import org.eclipse.equinox.internal.provisional.p2.ui.actions.UpdateAction;
import org.eclipse.equinox.internal.provisional.p2.ui.model.IUElementListRoot;
import org.eclipse.equinox.internal.provisional.p2.ui.operations.PlannerResolutionOperation;
+import org.eclipse.equinox.internal.provisional.p2.ui.operations.ProvisioningUtil;
import org.eclipse.equinox.internal.provisional.p2.ui.policy.PlanValidator;
import org.eclipse.equinox.internal.provisional.p2.ui.policy.Policy;
import org.eclipse.jface.viewers.ISelectionProvider;
@@ -60,8 +64,19 @@ final class AutomaticUpdateAction extends UpdateAction {
profileListener = new ProvUIProvisioningListener(
ProvUIProvisioningListener.PROV_EVENT_PROFILE) {
protected void profileChanged(final String profileId) {
- if (profileId.equals(getProfileId(false)))
+ String id = getProfileId(false);
+ if (id == IProfileRegistry.SELF) {
+ try {
+ IProfile profile = ProvisioningUtil.getProfile(IProfileRegistry.SELF);
+ id = profile.getProfileId();
+ } catch (ProvisionException e) {
+ id = null;
+ }
+ }
+ if (profileId.equals(id)) {
resolvedOperation = null;
+ automaticUpdater.validateUpdates();
+ }
}
};
return profileListener;

Back to the top