Class PerformRefactoringHistoryOperation

  • All Implemented Interfaces:
    IWorkspaceRunnable, ICoreRunnable

    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
    Restriction:
    This class is not intended to be subclassed by clients.
    Restriction:
    This class is not intended to be instantiated by clients.
    • 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

        @Deprecated
        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
      • createRefactoring

        @Deprecated
        protected Refactoring createRefactoring​(RefactoringDescriptor descriptor,
                                                RefactoringStatus status,
                                                IProgressMonitor monitor)
                                         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
        monitor - the progress monitor to use
        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
        Since:
        3.4
      • createRefactoringContext

        protected RefactoringContext createRefactoringContext​(RefactoringDescriptor descriptor,
                                                              RefactoringStatus status,
                                                              IProgressMonitor monitor)
                                                       throws CoreException
        Method which is called to create a refactoring context from a refactoring descriptor. The refactoring context must contain a refactoring in an initialized state at the return of the method call.

        A caller of this method must ensure that RefactoringContext.dispose() is eventually called.

        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
        monitor - the progress monitor to use
        Returns:
        the refactoring context, 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 context
        Since:
        3.6
      • 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