Eclipse Platform
Release 3.6

org.eclipse.equinox.p2.operations
Class UninstallOperation

java.lang.Object
  extended by org.eclipse.equinox.p2.operations.ProfileChangeOperation
      extended by org.eclipse.equinox.p2.operations.UninstallOperation
All Implemented Interfaces:
IProfileChangeJob

public class UninstallOperation
extends ProfileChangeOperation

An UninstallOperation describes an operation that uninstalls IInstallableUnits from a profile. The following snippet shows how one might use an UninstallOperation to perform a synchronous resolution and then kick off an uninstall in the background:

 UninstallOperation op = new UninstallOperation(session, new IInstallableUnit [] { removeThisIU });
 IStatus result = op.resolveModal(monitor);
 if (result.isOK()) {
   op.getProvisioningJob(monitor).schedule();
 }
 

Since:
2.0
Restriction:
This class is not intended to be subclassed by clients.

Constructor Summary
UninstallOperation(ProvisioningSession session, Collection<IInstallableUnit> toUninstall)
          Create an uninstall operation on the specified provisioning session that uninstalls the specified IInstallableUnits.
 
Method Summary
protected  void computeProfileChangeRequest(MultiStatus status, IProgressMonitor monitor)
          Compute the profile change request for this operation, adding any relevant intermediate status to the supplied status.
protected  String getProvisioningJobName()
          Return an appropriate name for the provisioning job.
protected  String getResolveJobName()
          Return an appropriate name for the resolution job.
 
Methods inherited from class org.eclipse.equinox.p2.operations.ProfileChangeOperation
getProfileChangeRequest, getProfileId, getProvisioningContext, getProvisioningJob, getProvisioningPlan, getResolutionDetails, getResolutionDetails, getResolutionResult, getResolveJob, hasResolved, prepareToResolve, resolveModal, setProfileId, setProvisioningContext, updateJobProvisioningContexts
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UninstallOperation

public UninstallOperation(ProvisioningSession session,
                          Collection<IInstallableUnit> toUninstall)
Create an uninstall operation on the specified provisioning session that uninstalls the specified IInstallableUnits. Unless otherwise specified, the operation will be associated with the currently running profile.

Parameters:
session - the session to use for obtaining provisioning services
toUninstall - the IInstallableUnits to be installed into the profile.
Method Detail

computeProfileChangeRequest

protected void computeProfileChangeRequest(MultiStatus status,
                                           IProgressMonitor monitor)
Description copied from class: ProfileChangeOperation
Compute the profile change request for this operation, adding any relevant intermediate status to the supplied status.

Specified by:
computeProfileChangeRequest in class ProfileChangeOperation
Parameters:
status - a multi-status to be used to add relevant status. If a profile change request cannot be computed for any reason, a status should be added to explain the problem.
monitor - the progress monitor to use for computing the profile change request

getProvisioningJobName

protected String getProvisioningJobName()
Description copied from class: ProfileChangeOperation
Return an appropriate name for the provisioning job.

Specified by:
getProvisioningJobName in class ProfileChangeOperation
Returns:
the provisioning job name.

getResolveJobName

protected String getResolveJobName()
Description copied from class: ProfileChangeOperation
Return an appropriate name for the resolution job.

Specified by:
getResolveJobName in class ProfileChangeOperation
Returns:
the resolution job name.

Eclipse Platform
Release 3.6

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2010. All rights reserved.