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.

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

Constructor Summary
PerformRefactoringHistoryOperation(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.
protected  Refactoring createRefactoring(RefactoringDescriptor descriptor, RefactoringStatus status)
          Method which is called to create a refactoring instance from a refactoring descriptor.
 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(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

createRefactoring

protected Refactoring createRefactoring(RefactoringDescriptor descriptor,
                                        RefactoringStatus status)
                                 throws CoreException
Method which is called to create a refactoring instance from a refactoring descriptor. The refactoring must be in an initialized state at the return of the method call. The default implementation delegates the task to the refactoring descriptor.

Parameters:
descriptor - the refactoring descriptor
status - a refactoring status to describe the outcome of the initialization
Returns:
the refactoring, or null if this refactoring descriptor represents the unknown refactoring, or if no refactoring contribution is available for this refactoring descriptor
Throws:
CoreException - if an error occurs while creating the refactoring instance

getExecutionStatus

public final 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, 2006. All rights reserved.