Package com.iizigo.java.prop
Class EditorMethodReference2
java.lang.Object
com.iizix.prop.GProp<GProp<?>[]>
com.iizix.prop.PropCnr
com.iizix.prop.MethodReference2
com.iizigo.java.prop.EditorMethodReference2
- All Implemented Interfaces:
- IClassReferenceListener,- EventListener,- IGProp<GProp<?>[]>,- IPropCnr,- Cloneable
- Direct Known Subclasses:
- EditorFieldActor
public abstract class EditorMethodReference2 extends MethodReference2 implements IClassReferenceListener
The Designer version the Method Reference "2" property class hold the reference to a Method that is in a Java class.
Two variants are supported:
- As for classic MethodReference:
 a Java class reference "ClassReference" is held by a parent container in the tree, and this method reference is a simple name without '.' and is the method in the class.
- a static method reference in a class, where this name is the fully qualified class name with the method name last.
- Author:
- Christopher Mindus
- Field SummaryFields- Fields inherited from class com.iizix.prop.MethodReference2- requiredAnnotations, runtimeMethod- Fields inherited from class com.iizix.prop.PropCnr- EMPTY, EMPTY_CLASSES, EMPTY_CNRS, EXTENDS_FRAMEWORK_ERROR_ID- 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_INCLUDE_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
- Constructor SummaryConstructorsConstructorDescriptionCreates a Method Reference property with no name and with a null value.- EditorMethodReference2- (Atom propertyAtom) Creates a Method Reference property with the specified name with a null value.- EditorMethodReference2- (Atom propertyAtom, String newValue) Creates a Method Reference property with the specified name and value.
- Method SummaryModifier and TypeMethodDescription- clone()Creates a clone out of this property.Gets the back-reference string.Gets the back-reference property.Gets the description of the reference from the annotation.Gets the Java element in resolve, could be a IType or IMethod (even the wrong IMethod due to missing annotation or compile error).Get the fully qualified annotation name that the Java Class should be annotated with.Gets the fully qualified interface name that the Java Class should implement.- abstract StringGet the fully qualified annotation name that the Java Class should be annotated with when non-static.- abstract StringGet the fully qualified annotation name that the Java Class should be annotated with when static.- booleanChecks if the Class Reference require an annotation back-reference.- booleanChecks for missing annotation.Checks the reference validity from the Designer.- 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, String oldName, String newName, String signature) Called when a method has been renamed in the class.- protected voidCalled when a property is disposed of.- protected voidCalled to perform reference resolving.- voidInforms the listener that the fully qualified class name has been changed.- voidNotifies the Class Reference of resolve result.- resolve()Resolves the reference.- Methods inherited from class com.iizix.prop.MethodReference2- equalsErrors, getMethodName, getRuntimeMethod, initializeElement, initializeProp, isStatic, lookupMethod, onPrepare, setMethodName, setMethodName- Methods inherited from class com.iizix.prop.PropCnr- __transferChildProps, addPredefinedProps, addProp, addProp, addProp2, addProp2, appendPropValue, canRequestFocus, completeVirtualize, containsProp, containsProp, convertLoadedProp, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, createUniqueAtom, createVSReference, doPropEqualsArrayValues, enablePropCommunication, enablePropHashMap, equalsTree, equalsTree, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsContainer, getExtendsError, getExtendsName, getExtendsOverride, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getPredefinedProps, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropBaseReference, getPropCnr, getPropCount, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue0, getRetargetedVerifyContainer, getString, getString, getString, getString, getValueClasses, getVSReference, hasFocus, hasSendData, initializeExtendsFramework, initializeValue, initPropCnr, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsPropertyValid, isExtendsRoot, isPropAddRemoveAllowed, isPropCommunicating, isPropExtended, list, list, logPropNotFound, maybeAddProp, onInsertProp, onPropRemoved, onPropTreeInitialized, onVirtualContainerCreated, onVirtualizationCompleted, paramString, prepare, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, replaceProps, requestFocus, requestFocus, requestFocusEx, requestFocusEx, resolveReferences, resolveRuntimeReferences, setBool, setBool, setBool, setBool, setCreateRequiredProp, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, shouldCreateProps, shouldSerializeToXML, toElementString, toNativeValue0, usePropHashMap, usesPropIndex, validateChildPropInValue, validateClassInstances, validatePropType, validatePropValue, verify, verifyInternalUseOnly, verifyTree, virtualize- Methods inherited from class com.iizix.prop.GProp- addPropError, addPropListener, appendProp, convertPropError, dispose, equals, equals, equalsObj, equalsPropValue, equalValues, 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, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getReferencePropNameNoAssert, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParentNoAssert, getTreeLock, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropForEditor, isPropNullable, isPropPrivate, isPropPrivateAtCreation, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropRootLoading, isPropRootTreeModificationsAllowed, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, isSibling, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onPropInvalidateCache, onPropParentChanged, onPropValueSet, onRemoteEvent, paramString, paramValue, post, post, removePropError, removePropListener, removePropUSER, renameProp, renameProp2, resetChangedTree, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPrivateCreateRequiredProp, setPropError, setPropErroredName, setPropExtended, setPropExtendsFinal, setPropExtendsPrivate, setPropForEditor, setPropNullable, setPropPrivate, setPropReadOnly, setPropUSER, setPropValue, setPropValue, setPropValue, setPropValueIncognito, setPropVolatile, severe, severe, severe, shouldSerializeToXML, throwIfReadOnly, toNativeValue, toString, toString, triggerRemoteEvent, triggerRemoteEvent, validateProp, warning, warning, warning- Methods inherited from class java.lang.Object- getClass, hashCode, notify, notifyAll, wait, wait, wait- Methods inherited from interface com.iizix.prop.IGProp- addPropError, addPropListener, dispose, equals, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAtomPath, getClientSessionGyro, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getReferencePropName, getRelativePropName, getRootParent, getTreeLock, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, isSibling, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onRemoteEvent, removePropError, removePropListener, renameProp, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, warning, warning, warning- Methods inherited from interface com.iizix.prop.IPropCnr- canRequestFocus, canRequestFocus, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized
- Field Details- ERROR_IDThe ID of the property error.- See Also:
 
 
- Constructor Details- EditorMethodReference2public EditorMethodReference2()Creates a Method Reference property with no name and with a null value.
- EditorMethodReference2Creates a Method Reference property with the specified name with a null value.- Parameters:
- propertyAtom- the property atom.
 
- EditorMethodReference2Creates a Method Reference property with the specified name and value.- Parameters:
- propertyAtom- the property atom.
- newValue- the new string value for the property.
 
 
- Method Details- cloneCreates 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! 
- getRequiredNonStaticAnnotationGet the fully qualified annotation name that the Java Class should be annotated with when non-static.- Returns:
- Gets the required annotation name, null for none.
 
- getRequiredStaticAnnotationGet the fully qualified annotation name that the Java Class should be annotated with when static.- Returns:
- Gets the required annotation name, null for none.
 
- getRequiredInterfaceGets 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.
 
- getRequiredClassAnnotationGet 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.
 
- isAnnotationBackReferenceRequiredpublic boolean isAnnotationBackReferenceRequired()Checks if the Class Reference 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 Class Reference owner.
 
- getAnnotationBackReferenceGets the back-reference string.- Specified by:
- getAnnotationBackReferencein interface- IClassReferenceListener
 
- getBackReferencePropertyGets the back-reference property.- Specified by:
- getBackReferencePropertyin interface- IClassReferenceListener
 
- onEventSelfEvent processing for Java Class Reference changed.- Specified by:
- onEventSelfin interface- IGProp<GProp<?>[]>
- Overrides:
- onEventSelfin class- GProp<GProp<?>[]>
- Parameters:
- event- The property event.
 
- onReferenceEventCalled 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- PropCnr
- Parameters:
- event- The resolve references event.
 
- lookupChecks the reference validity from the Designer.
- onPropDisposeprotected void onPropDispose()Called when a property is disposed of.- Overrides:
- onPropDisposein class- PropCnr
 
- onResolveNotifies 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.
 
- resolveResolves the reference.- Returns:
- The method Object (IMethod for Designer), or class/type instance (IType for Designer) if class is present but not the method, or a String for the error (can also be null e.g. for no method name). Do not use the return code in other places than the Designer.
 
- getJavaElementGets the Java element in resolve, could be a IType or IMethod (even the wrong IMethod due to missing annotation or compile error). This should only be used e.g. in the Show in Java Editor function.
- isAnnotationMissingpublic boolean isAnnotationMissing()Checks for missing annotation. This call should only be used in the Designer.- Returns:
- null For not missing or can't do anything, otherwise the JavaClass instance.
 
- getDescriptionGets the description of the reference from the annotation.- Returns:
- The description from the annotation, or an error message if not resolved.
 
- onJavaChangedSWTCalled 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
 
- onRenameInforms 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.
 
- onMethodRenamedCalled 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.