Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse JDT
Release 3.5

org.eclipse.jdt.core.refactoring.descriptors
Class ExtractClassDescriptor


java.lang.Object
  extended by 

org.eclipse.ltk.core.refactoring.RefactoringDescriptor
      extended by 

org.eclipse.jdt.core.refactoring.descriptors.JavaRefactoringDescriptor
          extended by 
org.eclipse.jdt.core.refactoring.descriptors.ExtractClassDescriptor
All Implemented Interfaces:
Comparable

public class ExtractClassDescriptor
extends JavaRefactoringDescriptor

Refactoring descriptor for the extract class refactoring.

An instance of this refactoring descriptor may be obtained by calling RefactoringContribution.createDescriptor() on a refactoring contribution requested by invoking RefactoringCore.getRefactoringContribution(String) with the appropriate refactoring id.

Since:
1.2
Restriction:
This class is not intended to be subclassed by clients.
Restriction:
This class is not intended to be instantiated by clients.

Nested Class Summary
static class ExtractClassDescriptor.Field
          Instances of ExtractClassDescriptor.Field describe which fields will be moved to the extracted class and their new name there.
 
Field Summary
 
Fields inherited from class org.eclipse.jdt.core.refactoring.descriptors. JavaRefactoringDescriptor
ATTRIBUTE_ELEMENT, ATTRIBUTE_INPUT, ATTRIBUTE_NAME, ATTRIBUTE_REFERENCES, ATTRIBUTE_SELECTION, ATTRIBUTE_VERSION, fArguments, JAR_MIGRATION, JAR_REFACTORING, JAR_SOURCE_ATTACHMENT, VALUE_VERSION_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
ExtractClassDescriptor ()
          Creates a new refactoring descriptor.
ExtractClassDescriptor ( String project, String description, String comment, Map arguments, int flags)
          Creates a new refactoring descriptor.
 
Method Summary
  String getClassName ()
          Returns the class name for the extracted class or null if the refactoring should choose a name
  String getFieldName ()
          Returns the field name for the generated field or null if the refactoring should choose a name
  ExtractClassDescriptor.Field[] getFields ()
          Returns the fields.
static  ExtractClassDescriptor.Field[] getFields ( IType type)
          Creates ExtractClassDescriptor.Field objects for all instance fields of the type
  String getPackage ()
          Returns the package where the extracted class will be created in if { isCreateTopLevel() returns true.
  IType getType ()
          Returns the type from which the fields are moved
 boolean isCreateGetterSetter ()
          Returns true if getters and setters are generated for fields.
 boolean isCreateTopLevel ()
          Returns whether the extracted class will be created as top level class or as nested class.
protected  void populateArgumentMap ()
          Populates the refactoring descriptor argument map based on the specified arguments.
 void setClassName ( String className)
          Sets the class name for the extracted class or null if the refactoring should choose a name
 void setCreateGetterSetter (boolean createGetterSetter)
          Sets whether getters and setters will be created for all fields.
 void setCreateTopLevel (boolean createTopLevel)
          Sets whether the extracted class will be created as top level class or as nested class.
 void setFieldName ( String fieldName)
          Sets the field name for the generated field or null if the refactoring should choose a name
 void setFields ( ExtractClassDescriptor.Field[] fields)
          Sets the fields.
 void setPackage ( String packageName)
          Sets the package in which the top level class will be created.
 void setType ( IType type)
          Sets the type to extract class from
  RefactoringStatus validateDescriptor ()
          Validates the refactoring descriptor with respect to the constraints imposed by the represented refactoring.
 
Methods inherited from class org.eclipse.jdt.core.refactoring.descriptors. JavaRefactoringDescriptor
createRefactoring, elementToHandle, getArguments, handleToElement, handleToElement, handleToElement, handleToResource, resourceToHandle, setComment, setDescription, setFlags, setProject
 
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
 

Constructor Detail

ExtractClassDescriptor

public ExtractClassDescriptor()
Creates a new refactoring descriptor.


ExtractClassDescriptor

public ExtractClassDescriptor(
String project,
                              
String description,
                              
String comment,
                              
Map arguments,
                              int flags)
                       throws 
IllegalArgumentException
Creates a new refactoring descriptor.

Parameters:
project - the non-empty name of the project associated with this refactoring, or null for a workspace refactoring
description - a non-empty human-readable description of the particular refactoring instance
comment - the human-readable comment of the particular refactoring instance, or null for no comment
arguments - a map of arguments that will be persisted and describes all settings for this refactoring
flags - the flags of the refactoring descriptor
Throws:
IllegalArgumentException - if the argument map contains invalid keys/values
Method Detail

getFields

public static 
ExtractClassDescriptor.Field[] getFields(
IType type)
                                                throws 
JavaModelException
Creates ExtractClassDescriptor.Field objects for all instance fields of the type

Parameters:
type - the type declaring the field that will be moved to the extracted class
Returns:
an instance of ExtractClassDescriptor.Field for every field declared in type that is not static
Throws:
JavaModelException - if the type does not exist or if an exception occurs while accessing its corresponding resource.

setFields

public void setFields(
ExtractClassDescriptor.Field[] fields)
               throws 
IllegalArgumentException
Sets the fields. The order is important and should be the same as the order returned from getFields(IType). Changing the order can have side effects because of different initialization order. Only fields which return true for ExtractClassDescriptor.Field.isCreateField() are created in the extracted class. Can be null to indicate that all instance fields should be moved

Parameters:
fields - the fields to move to the extracted class. Can be null to indicate that all instance fields should be moved
Throws:
IllegalArgumentException - if one of the fields is null

getFields

public 
ExtractClassDescriptor.Field[] getFields()
Returns the fields. The order of the fields is the same as they will appear in the extracted class if ExtractClassDescriptor.Field.isCreateField() returns true.

Returns:
the fields or null. If null all instance fields from the selected type will be moved

getType

public 
IType getType()
Returns the type from which the fields are moved

Returns:
the type

setType

public void setType(
IType type)
Sets the type to extract class from

Parameters:
type - the type to extract class from

getPackage

public 
String getPackage()
Returns the package where the extracted class will be created in if { isCreateTopLevel() returns true. Can return null to indicate that the package will be the same as the type

Returns:
the package for the toplevel extracted class or null. If null the package will be the same as the type

setPackage

public void setPackage(
String packageName)
Sets the package in which the top level class will be created. Can be null to indicate that the package will be the same as the type

Parameters:
packageName - the package in which the top level class will be created. Can be null to indicate that the package will be the same as the type

getClassName

public 
String getClassName()
Returns the class name for the extracted class or null if the refactoring should choose a name

Returns:
the class name for the extracted class or null if the refactoring should choose a name

setClassName

public void setClassName(
String className)
Sets the class name for the extracted class or null if the refactoring should choose a name

Parameters:
className - the class name for the extracted class or null if the refactoring should choose a name

getFieldName

public 
String getFieldName()
Returns the field name for the generated field or null if the refactoring should choose a name

Returns:
the field name for the generated field or null if the refactoring should choose a name

setFieldName

public void setFieldName(
String fieldName)
Sets the field name for the generated field or null if the refactoring should choose a name

Parameters:
fieldName - the field name for the generated field or null if the refactoring should choose a name

isCreateTopLevel

public boolean isCreateTopLevel()
Returns whether the extracted class will be created as top level class or as nested class. If true the extracted class will be generated as top level class. The default is true

Returns:
if true the extracted class will be generated as top level class. The default is true

setCreateTopLevel

public void setCreateTopLevel(boolean createTopLevel)
Sets whether the extracted class will be created as top level class or as nested class. If true the extracted class will be generated as top level class. Else the class will be created as nested class in the type. The default is true

Parameters:
createTopLevel - true to generated as top level class. The default is true

setCreateGetterSetter

public void setCreateGetterSetter(boolean createGetterSetter)
Sets whether getters and setters will be created for all fields.

Parameters:
createGetterSetter - true to create getters and setters. Default is false.

isCreateGetterSetter

public boolean isCreateGetterSetter()
Returns true if getters and setters are generated for fields. Default is false.

Returns:
true if getters and setters are generated for fields. Default is false

populateArgumentMap

protected void populateArgumentMap()
Description copied from class: JavaRefactoringDescriptor
Populates the refactoring descriptor argument map based on the specified arguments. Subclasses should extend and add their arguments to JavaRefactoringDescriptor.fArguments.

Overrides:
populateArgumentMap in class JavaRefactoringDescriptor

validateDescriptor

public 
RefactoringStatus validateDescriptor()
Description copied from class: JavaRefactoringDescriptor
Validates the refactoring descriptor with respect to the constraints imposed by the represented refactoring.

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.

Overrides:
validateDescriptor in class JavaRefactoringDescriptor
Returns:
a refactoring status describing the outcome of the validation

Eclipse JDT
Release 3.5

Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.

 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire