Eclipse Platform
Release 3.2

org.eclipse.ltk.core.refactoring
Class PerformRefactoringHistoryOperation

java.lang.Object
  extended byorg.eclipse.ltk.core.refactoring.PerformRefactoringHistoryOperation
All Implemented Interfaces:
IWorkspaceRunnable

public class PerformRefactoringHistoryOperation
extends Object
implements IWorkspaceRunnable

Operation that, when run, executes a series of refactoring sequentially. Refactorings are executed using PerformRefactoringOperation.

The operation should be executed via the run method offered by IWorkspace to achieve proper delta batching.

Note: this class is not intended to be instantiated or extended outside of the refactoring framework.

Note: This API is considered experimental and may change in the near future.

Since:
3.2
See Also:
IWorkspace, PerformRefactoringOperation, RefactoringHistory, RefactoringHistoryService

Constructor Summary
PerformRefactoringHistoryOperation(org.eclipse.ltk.core.refactoring.history.RefactoringHistory history)
          Creates a new perform refactoring history operation.
 
Method Summary
protected  RefactoringStatus aboutToPerformRefactoring(Refactoring refactoring, RefactoringDescriptor descriptor, IProgressMonitor monitor)
          Hook method which is called when the specified refactoring is going to be executed.
 RefactoringStatus getExecutionStatus()
          Returns the execution status.
protected  void refactoringPerformed(Refactoring refactoring, IProgressMonitor monitor)
          Hook method which is called when the specified refactoring has been performed.
 void run(IProgressMonitor monitor)
          Runs the operation reporting progress to and accepting cancellation requests from the given progress monitor.

Implementors of this method should check the progress monitor for cancellation when it is safe and appropriate to do so. The cancellation request should be propagated to the caller by throwing OperationCanceledException.

 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PerformRefactoringHistoryOperation

public PerformRefactoringHistoryOperation(org.eclipse.ltk.core.refactoring.history.RefactoringHistory history)
Creates a new perform refactoring history operation.

Parameters:
history - the refactoring history
Method Detail

aboutToPerformRefactoring

protected RefactoringStatus aboutToPerformRefactoring(Refactoring refactoring,
                                                      RefactoringDescriptor descriptor,
                                                      IProgressMonitor monitor)
Hook method which is called when the specified refactoring is going to be executed.

Parameters:
refactoring - the refactoring about to be executed
descriptor - the refactoring descriptor
monitor - the progress monitor to use
Returns:
a status describing the outcome of the initialization

getExecutionStatus

public RefactoringStatus getExecutionStatus()
Returns the execution status. Guaranteed not to be null.

Returns:
the status of the session

refactoringPerformed

protected void refactoringPerformed(Refactoring refactoring,
                                    IProgressMonitor monitor)
Hook method which is called when the specified refactoring has been performed.

Parameters:
refactoring - the refactoring which has been performed
monitor - the progress monitor to use

run

public void run(IProgressMonitor monitor)
         throws CoreException
Runs the operation reporting progress to and accepting cancellation requests from the given progress monitor.

Implementors of this method should check the progress monitor for cancellation when it is safe and appropriate to do so. The cancellation request should be propagated to the caller by throwing OperationCanceledException.

Specified by:
run in interface IWorkspaceRunnable
Parameters:
monitor - a progress monitor, or null if progress reporting and cancellation are not desired
Throws:
CoreException - if this operation fails.

Eclipse Platform
Release 3.2

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.