diff options
Diffstat (limited to 'org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/wizards/MavenDiscoveryInstallWizard.java')
-rw-r--r-- | org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/wizards/MavenDiscoveryInstallWizard.java | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/wizards/MavenDiscoveryInstallWizard.java b/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/wizards/MavenDiscoveryInstallWizard.java index 964b6574..5e29f4e1 100644 --- a/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/wizards/MavenDiscoveryInstallWizard.java +++ b/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/wizards/MavenDiscoveryInstallWizard.java @@ -12,7 +12,10 @@ package org.eclipse.m2e.internal.discovery.wizards; import java.util.Collection; +import org.eclipse.core.runtime.IStatus; +import org.eclipse.equinox.internal.p2.ui.dialogs.ISelectableIUsPage; import org.eclipse.equinox.internal.p2.ui.dialogs.PreselectedIUInstallWizard; +import org.eclipse.equinox.internal.p2.ui.dialogs.ResolutionResultsWizardPage; import org.eclipse.equinox.internal.p2.ui.model.ElementUtils; import org.eclipse.equinox.p2.metadata.IInstallableUnit; import org.eclipse.equinox.p2.operations.ProfileChangeOperation; @@ -20,12 +23,14 @@ import org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob; import org.eclipse.equinox.p2.ui.ProvisioningUI; import org.eclipse.m2e.internal.discovery.operation.RestartInstallOperation; - /* * This exists to allow us to return a ProfileChangeOperation which changes the restart policy for provisioning jobs. */ +@SuppressWarnings("restriction") public class MavenDiscoveryInstallWizard extends PreselectedIUInstallWizard { + private boolean waitingForOtherJobs; + public MavenDiscoveryInstallWizard(ProvisioningUI ui, RestartInstallOperation operation, Collection<IInstallableUnit> initialSelections, LoadMetadataRepositoryJob job) { super(ui, operation, initialSelections, job); @@ -41,4 +46,19 @@ public class MavenDiscoveryInstallWizard extends PreselectedIUInstallWizard { op.setProfileId(getProfileId()); return op; } + + public boolean shouldRecomputePlan(ISelectableIUsPage page) { + boolean previouslyWaiting = waitingForOtherJobs; + boolean previouslyCanceled = getCurrentStatus().getSeverity() == IStatus.CANCEL; + waitingForOtherJobs = ui.hasScheduledOperations(); + return waitingForOtherJobs || previouslyWaiting || previouslyCanceled || pageSelectionsHaveChanged(page); + } + + public void setMainPage(ISelectableIUsPage page) { + mainPage = page; + } + + public void setResolutionResultsPage(ResolutionResultsWizardPage page) { + resolutionPage = page; + } } |