|
Eclipse JDT Release 3.3 |
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.ltk.core.refactoring.RefactoringDescriptor
org.eclipse.jdt.core.refactoring.descriptors.JavaRefactoringDescriptor
Partial implementation of a java refactoring descriptor.
This class provides features common to all Java refactorings.
Note: this class is not intended to be extended outside the refactoring framework.
Field Summary | |
---|---|
protected static String |
ATTRIBUTE_ELEMENT
Predefined argument called element<Number> .
|
protected static String |
ATTRIBUTE_INPUT
Predefined argument called input .
|
protected static String |
ATTRIBUTE_NAME
Predefined argument called name .
|
protected static String |
ATTRIBUTE_REFERENCES
Predefined argument called references .
|
protected static String |
ATTRIBUTE_SELECTION
Predefined argument called selection .
|
protected static String |
ATTRIBUTE_VERSION
The version attribute |
protected Map |
fArguments
The argument map |
static int |
JAR_MIGRATION
Constant describing the jar migration flag (value: 65536 ).
|
static int |
JAR_REFACTORING
Constant describing the jar refactoring flag (value: 524288 ).
|
static int |
JAR_SOURCE_ATTACHMENT
Constant describing the jar source attachment flag (value: 262144 ).
|
protected static String |
VALUE_VERSION_1_0
The version value 1.0 |
Fields inherited from class org.eclipse.ltk.core.refactoring.RefactoringDescriptor |
---|
BREAKING_CHANGE, ID_UNKNOWN, MULTI_CHANGE, NONE, STRUCTURAL_CHANGE, USER_CHANGE |
Constructor Summary | |
---|---|
protected |
JavaRefactoringDescriptor(String id)
Creates a new java refactoring descriptor. |
protected |
JavaRefactoringDescriptor(String id,
Map arguments)
Creates a new java refactoring descriptor. |
Method Summary | |
---|---|
Refactoring |
createRefactoring(RefactoringStatus status)
|
protected static String |
elementToHandle(String project,
IJavaElement element)
Converts the specified element to an input handle. |
protected Map |
getArguments()
Returns the argument map of this refactoring descriptor. |
protected static IJavaElement |
handleToElement(String project,
String handle)
Converts an input handle back to the corresponding java element. |
protected static IJavaElement |
handleToElement(String project,
String handle,
boolean check)
Converts an input handle back to the corresponding java element. |
protected static IJavaElement |
handleToElement(WorkingCopyOwner owner,
String project,
String handle,
boolean check)
Converts an input handle back to the corresponding java element. |
protected static IResource |
handleToResource(String project,
String handle)
Converts an input handle with the given prefix back to the corresponding resource. |
protected void |
populateArgumentMap()
Populates the refactoring descriptor argument map based on the specified arguments. |
protected static String |
resourceToHandle(String project,
IResource resource)
Converts the specified resource to an input handle. |
void |
setComment(String comment)
Sets the details comment of this refactoring. |
void |
setDescription(String description)
Sets the description of this refactoring. |
void |
setFlags(int flags)
Sets the flags of this refactoring. |
void |
setProject(String project)
Sets the project name of this refactoring. |
RefactoringStatus |
validateDescriptor()
Validates the refactoring descriptor with respect to the constraints imposed by the represented refactoring. |
Methods inherited from class org.eclipse.ltk.core.refactoring.RefactoringDescriptor |
---|
compareTo, equals, getComment, getDescription, getFlags, getID, getProject, getTimeStamp, hashCode, setTimeStamp, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
protected static final String ATTRIBUTE_ELEMENT
element<Number>
.
This argument should be used to describe the elements being refactored. The value of this argument does not necessarily have to uniquely identify the elements. However, it must be possible to uniquely identify the elements using the value of this argument in conjunction with the values of the other user-defined attributes.
The element arguments are simply distinguished by appending a number to the argument name, e.g. element1. The indices of this argument are one-based.
protected static final String ATTRIBUTE_INPUT
input
.
This argument should be used to describe the element being refactored. The value of this argument does not necessarily have to uniquely identify the input element. However, it must be possible to uniquely identify the input element using the value of this argument in conjunction with the values of the other user-defined attributes.
protected static final String ATTRIBUTE_NAME
name
.
This argument should be used to name the element being refactored. The value of this argument may be shown in the user interface.
protected static final String ATTRIBUTE_REFERENCES
references
.
This argument should be used to describe whether references to the
elements being refactored should be updated as well. The value of this
argument is either "true"
or "false"
.
protected static final String ATTRIBUTE_SELECTION
selection
.
This argument should be used to describe user input selections within a text file. The value of this argument has the format "offset length".
protected static final String ATTRIBUTE_VERSION
public static final int JAR_MIGRATION
65536
).
Clients should set this flag to indicate that the refactoring can be
stored to a JAR file in order to be accessible to the Migrate JAR File
refactoring, regardless whether there is a source attachment to the JAR
file or not. If this flag is set, JAR_REFACTORING
should
be set as well.
JAR_REFACTORING
,
Constant Field Valuespublic static final int JAR_REFACTORING
524288
).
Clients should set this flag to indicate that the refactoring in
principle can be performed on binary elements originating from a JAR
file. Refactorings which are able to run on binary elements, but require
a correctly configured source attachment to work must set the
JAR_SOURCE_ATTACHMENT
flag as well.
JAR_SOURCE_ATTACHMENT
,
Constant Field Valuespublic static final int JAR_SOURCE_ATTACHMENT
262144
).
Clients should set this flag to indicate that the refactoring can be performed on binary elements originating from a JAR file if and only if it has a correctly configured source attachment.
JAR_REFACTORING
,
Constant Field Valuesprotected static final String VALUE_VERSION_1_0
1.0
protected final Map fArguments
Constructor Detail |
protected JavaRefactoringDescriptor(String id)
id
- the unique id of the refactoringprotected JavaRefactoringDescriptor(String id, Map arguments)
id
- the unique id of the refactoringarguments
- the argument map to useMethod Detail |
protected static String elementToHandle(String project, IJavaElement element)
project
- the project, or null
for the workspaceelement
- the element
protected static IJavaElement handleToElement(String project, String handle)
project
- the project, or null
for the workspacehandle
- the input handle
null
if no such
element existsprotected static IJavaElement handleToElement(String project, String handle, boolean check)
project
- the project, or null
for the workspacehandle
- the input handlecheck
- true
to check for existence of the element,
false
otherwise
null
if no such
element existsprotected static IJavaElement handleToElement(WorkingCopyOwner owner, String project, String handle, boolean check)
owner
- the working copy ownerproject
- the project, or null
for the workspacehandle
- the input handlecheck
- true
to check for existence of the element,
false
otherwise
null
if no such
element existsprotected static IResource handleToResource(String project, String handle)
project
- the project, or null
for the workspacehandle
- the input handle
null
if no such
resource existsprotected static String resourceToHandle(String project, IResource resource)
project
- the project, or null
for the workspaceresource
- the resource
public Refactoring createRefactoring(RefactoringStatus status) throws CoreException
CoreException
protected Map getArguments()
The returned map is a copy of the argument map. Modifying the result does not change the refactoring descriptor itself.
Note: This API must not be extended or reimplemented and should not be called from outside the refactoring framework.
protected void populateArgumentMap()
public void setComment(String comment)
This information is used in the user interface to show additional details about the performed refactoring. The default is to use no details comment.
comment
- the details comment to set, or null
to set no
details commentRefactoringDescriptor.getComment()
public void setDescription(String description)
This information is used to label a refactoring in the user interface. The default is an unspecified, but legal description.
description
- the non-empty description of the refactoring to setRefactoringDescriptor.getDescription()
public void setFlags(int flags)
The default is
RefactoringDescriptor.STRUCTURAL_CHANGE | RefactoringDescriptor.MULTI_CHANGE
,
unless overridden by a concrete subclass. Clients may use refactoring
flags to indicate special capabilities of Java refactorings.
flags
- the flags to set, or RefactoringDescriptor.NONE
to clear the flagsRefactoringDescriptor.getFlags()
,
RefactoringDescriptor.NONE
,
RefactoringDescriptor.STRUCTURAL_CHANGE
,
RefactoringDescriptor.BREAKING_CHANGE
,
RefactoringDescriptor.MULTI_CHANGE
,
JAR_MIGRATION
,
JAR_REFACTORING
,
JAR_SOURCE_ATTACHMENT
public void setProject(String project)
The default is to associate the refactoring with the workspace. Subclasses should call this method with the project name associated with the refactoring's input elements, if available.
project
- the non-empty project name to set, or null
for
the workspaceRefactoringDescriptor.getProject()
public RefactoringStatus validateDescriptor()
Clients must call this method to verify that all arguments have been
correctly set and that they satisfy the constraints imposed by specific
refactorings. Returning a refactoring status of severity
RefactoringStatus.FATAL
indicates that the refactoring descriptor
cannot be used to create a refactoring instance.
|
Eclipse JDT Release 3.3 |
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |