Class RenameSupport


  • public class RenameSupport
    extends java.lang.Object
    Central access point to execute rename refactorings.

    Note: this class is not intended to be subclassed or instantiated.

    Since:
    2.1
    Restriction:
    This class is not intended to be subclassed by clients.
    Restriction:
    This class is not intended to be instantiated by clients.
    • Field Detail

      • NONE

        public static final int NONE
        Flag indication that no additional update is to be performed.
        See Also:
        Constant Field Values
      • UPDATE_REFERENCES

        public static final int UPDATE_REFERENCES
        Flag indicating that references are to be updated as well.
        See Also:
        Constant Field Values
      • UPDATE_JAVADOC_COMMENTS

        @Deprecated
        public static final int UPDATE_JAVADOC_COMMENTS
        Deprecated.
        use UPDATE_REFERENCES or UPDATE_TEXTUAL_MATCHES or both.
        Flag indicating that Javadoc comments are to be updated as well.
        See Also:
        Constant Field Values
      • UPDATE_REGULAR_COMMENTS

        @Deprecated
        public static final int UPDATE_REGULAR_COMMENTS
        Deprecated.
        use UPDATE_TEXTUAL_MATCHES
        Flag indicating that regular comments are to be updated as well.
        See Also:
        Constant Field Values
      • UPDATE_STRING_LITERALS

        @Deprecated
        public static final int UPDATE_STRING_LITERALS
        Deprecated.
        use UPDATE_TEXTUAL_MATCHES
        Flag indicating that string literals are to be updated as well.
        See Also:
        Constant Field Values
      • UPDATE_TEXTUAL_MATCHES

        public static final int UPDATE_TEXTUAL_MATCHES
        Flag indicating that textual matches in comments and in string literals are to be updated as well.
        Since:
        3.0
        See Also:
        Constant Field Values
      • UPDATE_GETTER_METHOD

        public static final int UPDATE_GETTER_METHOD
        Flag indicating that the getter method is to be updated as well.
        See Also:
        Constant Field Values
      • UPDATE_SETTER_METHOD

        public static final int UPDATE_SETTER_METHOD
        Flag indicating that the setter method is to be updated as well.
        See Also:
        Constant Field Values
    • Method Detail

      • preCheck

        public IStatus preCheck()
                         throws CoreException
        Executes some light weight precondition checking. If the returned status is an error then the refactoring can't be executed at all. However, returning an OK status doesn't guarantee that the refactoring can be executed. It may still fail while performing the exhaustive precondition checking done inside the methods openDialog or perform. The method is mainly used to determine enable/disablement of actions.
        Returns:
        the result of the light weight precondition checking.
        Throws:
        CoreException - if an unexpected exception occurs while performing the checking.
        See Also:
        openDialog(Shell), perform(Shell, IRunnableContext)
      • openDialog

        public void openDialog​(Shell parent)
                        throws CoreException
        Opens the refactoring dialog for this rename support.
        Parameters:
        parent - a shell used as a parent for the refactoring dialog.
        Throws:
        CoreException - if an unexpected exception occurs while opening the dialog.
        See Also:
        openDialog(Shell, boolean)
      • openDialog

        public boolean openDialog​(Shell parent,
                                  boolean showPreviewOnly)
                           throws CoreException
        Opens the refactoring dialog for this rename support.

        This method has to be called from within the UI thread.

        Parameters:
        parent - a shell used as a parent for the refactoring, preview, or error dialog
        showPreviewOnly - if true, the dialog skips all user input pages and directly shows the preview or error page. Otherwise, shows all pages.
        Returns:
        true if the refactoring has been executed successfully, false if it has been canceled or if an error has happened during initial conditions checking.
        Throws:
        CoreException - if an error occurred while executing the operation.
        Since:
        3.3
        See Also:
        openDialog(Shell)
      • perform

        public void perform​(Shell parent,
                            IRunnableContext context)
                     throws java.lang.InterruptedException,
                            java.lang.reflect.InvocationTargetException
        Executes the rename refactoring without showing a dialog to gather additional user input (for example the new name of the IJavaElement). Only an error dialog is shown (if necessary) to present the result of the refactoring's full precondition checking.

        The method has to be called from within the UI thread.

        Parameters:
        parent - a shell used as a parent for the error dialog.
        context - a IRunnableContext to execute the operation.
        Throws:
        java.lang.InterruptedException - if the operation has been canceled by the user.
        java.lang.reflect.InvocationTargetException - if an error occurred while executing the operation.
        See Also:
        openDialog(Shell), IRunnableContext.run(boolean, boolean, org.eclipse.jface.operation.IRunnableWithProgress)
      • create

        public static RenameSupport create​(IJavaProject project,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given IJavaProject.
        Parameters:
        project - the IJavaProject to be renamed.
        newName - the project's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
      • create

        public static RenameSupport create​(IPackageFragment fragment,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given IPackageFragment.
        Parameters:
        fragment - the IPackageFragment to be renamed.
        newName - the package fragment's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, and UPDATE_TEXTUAL_MATCHES, or their bitwise OR, or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
      • create

        public static RenameSupport create​(ICompilationUnit unit,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given ICompilationUnit.
        Parameters:
        unit - the ICompilationUnit to be renamed.
        newName - the compilation unit's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, and UPDATE_TEXTUAL_MATCHES, or their bitwise OR, or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
      • create

        public static RenameSupport create​(IType type,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given IType.
        Parameters:
        type - the IType to be renamed.
        newName - the type's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, and UPDATE_TEXTUAL_MATCHES, or their bitwise OR, or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
      • create

        public static RenameSupport create​(IMethod method,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given IMethod.
        Parameters:
        method - the IMethod to be renamed.
        newName - the method's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
      • create

        public static RenameSupport create​(IField field,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given IField.
        Parameters:
        field - the IField to be renamed.
        newName - the field's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, UPDATE_TEXTUAL_MATCHES, UPDATE_GETTER_METHOD, and UPDATE_SETTER_METHOD, or their bitwise OR, or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
      • create

        public static RenameSupport create​(ITypeParameter parameter,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given ITypeParameter.
        Parameters:
        parameter - the ITypeParameter to be renamed.
        newName - the parameter's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
        Since:
        3.1
      • create

        public static RenameSupport create​(ILocalVariable variable,
                                           java.lang.String newName,
                                           int flags)
                                    throws CoreException
        Creates a new rename support for the given ILocalVariable.
        Parameters:
        variable - the ILocalVariable to be renamed.
        newName - the variable's new name. null is a valid value indicating that no new name is provided.
        flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, or NONE.
        Returns:
        the RenameSupport.
        Throws:
        CoreException - if an unexpected error occurred while creating the RenameSupport.
        Since:
        3.1