Package com.iizigo.java.prop
Class EditorClassReference
- java.lang.Object
- com.iizix.prop.GProp<java.lang.String>
- com.iizix.prop.StringProp
- com.iizix.prop.ClassReference
- com.iizigo.java.prop.EditorClassReference
 
 
 
 
- All Implemented Interfaces:
- IClassReferenceListener,- EventListener,- IGProp<java.lang.String>,- java.lang.Cloneable
 - public class EditorClassReference extends ClassReference implements IClassReferenceListener The Designer version of the Class Reference property class hold the reference to a Java class. It includes support for Java Refactoring in Eclipse as well as Reference Validation.- Author:
- Christopher Mindus
 
- Field Summary- Fields - Modifier and Type - Field - Description - static java.lang.String- ERROR_IDThe ID of the property error.- Fields inherited from class com.iizix.prop.ClassReference- implementsInterface, requiredAnnotation
 - Fields inherited from class com.iizix.prop.GProp- GPDEBUG, PROP_ATTR_STRING_EDITOR_PROP, PROP_ATTR_STRING_ERRORED_NAME, PROP_ATTR_STRING_EXTENDS, PROP_ATTR_STRING_EXTENDS_FINAL, PROP_ATTR_STRING_EXTENDS_PRIVATE, PROP_ATTR_STRING_NULLABLE, PROP_ATTR_STRING_PRIVATE, PROP_ATTR_STRING_PRIVATE_CHANGE_EVENT, PROP_ATTR_STRING_READ_ONLY, PROP_USER_1, PROP_USER_2
 - Fields inherited from interface com.iizix.prop.IGProp- EQC_ERROR_IGNORE_ALL, EQC_ERROR_IGNORE_REFERENCES, EQC_IGNORE_ARRAY, EQC_IGNORE_VOLATILE_OR_EDITOR, EQC_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
 
 - Constructor Summary- Constructors - Constructor - Description - EditorClassReference()Creates a Class Reference property with no name and with a null value.- EditorClassReference(Atom propertyAtom)Creates a Class Reference property with the specified name with a null value.- EditorClassReference(Atom propertyAtom, java.lang.String newValue)Creates a Class Reference property with the specified name and value.
 - Method Summary- All Methods Instance Methods Concrete Methods - Modifier and Type - Method - Description - boolean- canShowInJavaEditor()Checks if the type is defined and can be shown in an Eclipse Java Editor.- EditorClassReference- clone()Creates a clone out of this property.- java.lang.String- getAnnotationBackReference()Gets the back-reference string.- PropCnr- getBackReferenceProperty()Gets the back-reference property.- JavaClass- getReference()Gets the reference found.- java.lang.String- getRequiredClassAnnotation()Get the fully qualified annotation name that the Java Class should be annotated with.- java.lang.String- getRequiredInterface()Gets the fully qualified interface name that the Java Class should implement.- org.eclipse.jdt.core.IType- getType()Gets the type referenced.- boolean- isAnnotationBackReferenceRequired()Checks if the ClassReference require an annotation back-reference.- void- onEventSelf(GEvent event)Event processing for Java Class Reference changed.- void- onJavaChangedSWT(JavaClass reference)Called when the source has changed and is recompiled on disk or in-memory reconcile.- void- onMethodRenamed(JavaClass reference, java.lang.String oldName, java.lang.String newName, java.lang.String signature)Called when a method has been renamed in the class.- protected void- onPropDispose()Called when a property is disposed of.- protected void- onReferenceEvent(ResolveReferencesEvent event)Called to perform reference resolving.- void- onRename(JavaClass reference, java.lang.String newName)Informs the listener that the fully qualified class name has been changed.- void- onResolve(JavaClass reference, boolean isClassFound, java.lang.String errorMessage)Notifies the Class Reference of resolve result.- void- setRequiredClassAnnotation(java.lang.String requiredAnnotation)Assigns a fully qualified annotation name that the Java Class should be annotated with.- void- setRequiredInterface(java.lang.String implementsInterface)Assigns a fully qualified interface name that the Java Class should implement.- boolean- showInJavaEditor(org.eclipse.swt.widgets.Shell shell)Goes to the type definition.- Methods inherited from class com.iizix.prop.ClassReference- equalsErrors, getClassReference, getMethod, getRuntimeClass, getRuntimeInstance, getRuntimeInstance, initializeElement, initializeProp, isPropPrivateAtCreation, onPrepare, onVirtualizationCompleted, setPropValue, verifyInterface, virtualize
 - Methods inherited from class com.iizix.prop.StringProp- appendPropValue, getPropValue0, getString, getString, getValueClasses, initializeValue, toNativeValue0, validatePropType
 - Methods inherited from class com.iizix.prop.GProp- addPropError, addPropListener, convertPropError, dispose, equals, equals, equalsObj, equalsPropValue, equalsTree, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientSessionGyro, getClientWorker, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getProjectName, getPropAtom, getPropBaseReference, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getReferences, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParent, getTreeLock, getVSReference, hasChanged, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropForEditor, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onPropInvalidateCache, onPropParentChanged, onPropTreeInitialized, onPropValueSet, onRemoteEvent, onVirtualized, paramString, paramValue, post, post, removePropError, removePropListener, removePropUSER, renameProp, renameProp2, resetChangedTree, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setCreateRequiredProp, setParent, setPrivateChangeEventProp, setPrivateCreateRequiredProp, setPropError, setPropErroredName, setPropExtended, setPropExtendsFinal, setPropExtendsPrivate, setPropForEditor, setPropNullable, setPropPrivate, setPropReadOnly, setPropUSER, setPropValue, setPropValue, setPropValue, setPropValueIncognito, setPropVolatile, severe, severe, severe, shouldSerializeToXML, throwIfReadOnly, toElementString, toNativeValue, toString, toString, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropValue, verify, verifyHasPropertyItem, warning, warning, warning
 
 
- Field Detail- ERROR_ID- public static final java.lang.String ERROR_ID The ID of the property error.- See Also:
- Constant Field Values
 
 
 - Constructor Detail- EditorClassReference- public EditorClassReference() Creates a Class Reference property with no name and with a null value.
 - EditorClassReference- public EditorClassReference(Atom propertyAtom) Creates a Class Reference property with the specified name with a null value.- Parameters:
- propertyAtom- the property atom.
 
 - EditorClassReference- public EditorClassReference(Atom propertyAtom, java.lang.String newValue) Creates a Class Reference property with the specified name and value.- Parameters:
- propertyAtom- the property atom.
- newValue- the new string value for the property.
 
 
 - Method Detail- clone- public EditorClassReference clone() Creates a clone out of this property. The cloning is overridden by the super classes in order to handle cloning of its class variables appropriately.- Cloning is used for "virtualization" of a property tree in the server. Client property classes will therefore throw - CloneNotSupportedException.- Once a tree has been cloned, the change-flag is reset, and the create-flag is set. All listeners are also removed! The new cloned property is an orphan, i.e. has no parent set. - Note that the cloning process is done WITHOUT thread synchronization for performance reasons, thus no modifications should be done to the tree! - Overrides:
- clonein class- ClassReference
- Returns:
- A new cloned String property.
 
 - setRequiredInterface- public void setRequiredInterface(java.lang.String implementsInterface) Assigns a fully qualified interface name that the Java Class should implement.- Setting the interface name doesn't cause a property change. 
 - getRequiredInterface- public java.lang.String getRequiredInterface() Gets the fully qualified interface name that the Java Class should implement.- Specified by:
- getRequiredInterfacein interface- IClassReferenceListener
- Returns:
- Gets the required interface name, null for none.
 
 - setRequiredClassAnnotation- public void setRequiredClassAnnotation(java.lang.String requiredAnnotation) Assigns a fully qualified annotation name that the Java Class should be annotated with.- Setting the annotation name doesn't cause a property change. 
 - getRequiredClassAnnotation- public java.lang.String getRequiredClassAnnotation() Get the fully qualified annotation name that the Java Class should be annotated with.- Specified by:
- getRequiredClassAnnotationin interface- IClassReferenceListener
- Returns:
- Gets the required annotation name, null for none.
 
 - isAnnotationBackReferenceRequired- public boolean isAnnotationBackReferenceRequired() Checks if the ClassReference require an annotation back-reference.- Specified by:
- isAnnotationBackReferenceRequiredin interface- IClassReferenceListener
- Returns:
- true if the annotation is required to have a back-reference on the "ref" member value pair to the ClassReference owner.
 
 - getAnnotationBackReference- public java.lang.String getAnnotationBackReference() Gets the back-reference string.- Specified by:
- getAnnotationBackReferencein interface- IClassReferenceListener
 
 - getBackReferenceProperty- public PropCnr getBackReferenceProperty() Gets the back-reference property.- Specified by:
- getBackReferencePropertyin interface- IClassReferenceListener
 
 - onEventSelf- public void onEventSelf(GEvent event) Event processing for Java Class Reference changed.- Specified by:
- onEventSelfin interface- IGProp<java.lang.String>
- Overrides:
- onEventSelfin class- GProp<java.lang.String>
- Parameters:
- event- The property event.
 
 - onReferenceEvent- protected void onReferenceEvent(ResolveReferencesEvent event) Called to perform reference resolving. A property should override this method if it needs to perform reference resolving and validation.- Subclasses override this method and only subclasses extending - PropCnrneeds to call- super.onReferenceEvent(ResolveReferenceEvent event).- Overrides:
- onReferenceEventin class- GProp<java.lang.String>
- Parameters:
- event- The resolve references event.
 
 - onPropDispose- protected void onPropDispose() Called when a property is disposed of.- Overrides:
- onPropDisposein class- ClassReference
 
 - getReference- public JavaClass getReference() Gets the reference found.- Returns:
- The class reference instance (in Designer it's com.iizigo.java.JavaClass), or null for none.
 
 - getType- public org.eclipse.jdt.core.IType getType() Gets the type referenced.- Returns:
- The type referenced, or null if not found.
 
 - canShowInJavaEditor- public boolean canShowInJavaEditor() Checks if the type is defined and can be shown in an Eclipse Java Editor.- Returns:
- true if it's a class in a ".java" file, false otherwise.
 
 - showInJavaEditor- public boolean showInJavaEditor(org.eclipse.swt.widgets.Shell shell) Goes to the type definition.- Parameters:
- shell- The shell of the requestor.
- Returns:
- true for success, false for failure.
 
 - onResolve- public void onResolve(JavaClass reference, boolean isClassFound, java.lang.String errorMessage) Notifies the Class Reference of resolve result.- Specified by:
- onResolvein interface- IClassReferenceListener
- Parameters:
- reference- The Class Reference.
- isClassFound- Flag indicating class is found, but interface is not implemented (when true) or annotation is missing.
- errorMessage- The error message, or null to clear the error.
 
 - onRename- public void onRename(JavaClass reference, java.lang.String newName) Informs the listener that the fully qualified class name has been changed. This includes the class package as well as the name.- Specified by:
- onRenamein interface- IClassReferenceListener
- Parameters:
- reference- The Class Reference.
- newName- The new fully qualified class name.
 
 - onJavaChangedSWT- public void onJavaChangedSWT(JavaClass reference) Called when the source has changed and is recompiled on disk or in-memory reconcile. This method is called in the SWT thread only (in the Designer).- Specified by:
- onJavaChangedSWTin interface- IClassReferenceListener
 
 - onMethodRenamed- public void onMethodRenamed(JavaClass reference, java.lang.String oldName, java.lang.String newName, java.lang.String signature) Called when a method has been renamed in the class.- Specified by:
- onMethodRenamedin interface- IClassReferenceListener
- Parameters:
- reference- The Class Reference.
- oldName- Old name.
- newName- New name.
- signature- Signature of method as retrieved by JavaHelper.getSimpleSignature class in Designer.