Class RenameSupport

java.lang.Object
org.eclipse.jdt.ui.refactoring.RenameSupport

public class RenameSupport extends 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 Details

    • NONE

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

      public static final int UPDATE_REFERENCES
      Flag indicating that references are to be updated as well.
      See Also:
    • 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:
    • 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:
    • 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:
    • 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:
    • UPDATE_GETTER_METHOD

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

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

    • preCheck

      public org.eclipse.core.runtime.IStatus preCheck() throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected exception occurs while performing the checking.
      See Also:
    • openDialog

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

      public boolean openDialog(org.eclipse.swt.widgets.Shell parent, boolean showPreviewOnly) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an error occurred while executing the operation.
      Since:
      3.3
      See Also:
    • perform

      public void perform(org.eclipse.swt.widgets.Shell parent, org.eclipse.jface.operation.IRunnableContext context) throws InterruptedException, 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:
      InterruptedException - if the operation has been canceled by the user.
      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(RenameJavaElementDescriptor descriptor) throws org.eclipse.core.runtime.CoreException
      Creates a new rename support for the given RenameJavaElementDescriptor.
      Parameters:
      descriptor - the RenameJavaElementDescriptor to create a RenameSupport for. The caller is responsible for configuring the descriptor before it is passed.
      Returns:
      the RenameSupport.
      Throws:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
      Since:
      3.3
    • create

      public static RenameSupport create(IJavaProject project, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(IPackageFragmentRoot root, String newName) throws org.eclipse.core.runtime.CoreException
      Creates a new rename support for the given IPackageFragmentRoot.
      Parameters:
      root - the IPackageFragmentRoot to be renamed.
      newName - the package fragment root's new name. null is a valid value indicating that no new name is provided.
      Returns:
      the RenameSupport.
      Throws:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(IPackageFragment fragment, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(ICompilationUnit unit, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(IType type, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(IMethod method, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(IField field, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
    • create

      public static RenameSupport create(ITypeParameter parameter, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
      Since:
      3.1
    • create

      public static RenameSupport create(ILocalVariable variable, String newName, int flags) throws org.eclipse.core.runtime.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:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
      Since:
      3.1
    • create

      public static RenameSupport create(IModuleDescription module, String newName, int flags) throws org.eclipse.core.runtime.CoreException
      Creates a new rename support for the given IModuleDescription.
      Parameters:
      module - the IModuleDescription to be renamed.
      newName - the module's new name. null is not a valid value
      flags - flags controlling additional parameters. Valid flags are UPDATE_REFERENCES, or NONE.
      Returns:
      the RenameSupport.
      Throws:
      org.eclipse.core.runtime.CoreException - if an unexpected error occurred while creating the RenameSupport.
      Since:
      3.24