Package com.iizix.prop
Class MethodReference2
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizix.prop.MethodReference2
- All Implemented Interfaces:
EventListener,IGProp<GProp<?>[]>,IPropCnr,java.lang.Cloneable
- Direct Known Subclasses:
EditorMethodReference2,FieldActor
public class MethodReference2 extends PropCnr
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 Summary
Fields Modifier and Type Field Description protected java.lang.StringrequiredAnnotationsThe required annotation, or null for none.protected java.lang.reflect.MethodruntimeMethodThe method for runtime, null for none.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_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 Modifier Constructor Description protectedMethodReference2()Creates a Method Reference property with no name and with a null value.MethodReference2(Atom propertyAtom)Creates a Method Reference property with the specified name with a null value.MethodReference2(Atom propertyAtom, java.lang.String reference)Creates a Class Reference property with the specified name and value.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanequalsErrors(PropError pe1, PropError pe2, int how)Processes error property verification.java.lang.StringgetMethodName()Gets the method name, instance or static.java.lang.reflect.MethodgetRuntimeMethod()Gets the loaded method for runtime.protected voidinitializeElement(org.w3c.dom.Element element)Called when the XML file for the property tree is serialized from properties.voidinitializeProp(org.w3c.dom.Element element)Called to initialize the property from anElement.booleanisStatic()Checks if this is a static reference, i.e.java.lang.reflect.MethodlookupMethod(ClassReference classReference, java.util.List<java.lang.Throwable> errors, java.lang.Class<?>... parameterTypes)Called when the application is being prepared by the owner of the method reference to look-up the method with the specified parameters.protected voidonPrepare(IAppOwner appOwner, IModuleOwner moduleOwner, boolean isPostCall, java.util.List<java.lang.Throwable> errors)Called when the application is being prepared.booleansetMethodName(java.lang.String method)Sets the method name.booleansetMethodName(java.lang.String method, IComplexOperation op)Sets the method name.Methods inherited from class com.iizix.prop.PropCnr
__transferChildProps, addPredefinedProps, addProp, addProp, addProp2, addProp2, appendPropValue, canRequestFocus, clone, completeVirtualize, containsProp, containsProp, convertLoadedProp, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, createUniqueAtom, createVSReference, doPropEqualsArrayValues, doVirtualizePropCnr, 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, getReferences, getRetargetedVerifyContainer, getString, getString, getString, getString, getValueClasses, getVSReference, hasFocus, hasSendData, initializeExtendsFramework, initializeValue, initPropCnr, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsPropertyValid, isExtendsRoot, isPropAddRemoveAllowed, isPropCommunicating, isPropExtended, isSibling, list, list, logPropNotFound, maybeAddProp, onInsertProp, onPropDispose, onPropRemoved, onPropTreeInitialized, onReferenceEvent, 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, convertPropError, dispose, equals, equals, equalsObj, equalsPropValue, 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, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParent, getTreeLock, hasChanged, 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, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onEventSelf, onPropInvalidateCache, onPropParentChanged, onPropValueSet, onRemoteEvent, onVirtualizationCompleted, onVirtualized, 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, verifyHasPropertyItem, 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, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onEventSelf, onRemoteEvent, removePropError, removePropListener, renameProp, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, verifyHasPropertyItem, warning, warning, warning
Methods inherited from interface com.iizix.prop.IPropCnr
canRequestFocus, canRequestFocus, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized
Constructor Detail
MethodReference2
protected MethodReference2()
Creates a Method Reference property with no name and with a null value.
MethodReference2
public MethodReference2(Atom propertyAtom)
Creates a Method Reference property with the specified name with a null value.- Parameters:
propertyAtom- the property atom.
MethodReference2
public MethodReference2(Atom propertyAtom, java.lang.String reference)
Creates a Class Reference property with the specified name and value.- Parameters:
propertyAtom- the property atom.reference- the reference string.
Method Detail
isStatic
public boolean isStatic()
Checks if this is a static reference, i.e. has a name with a '.' inside.
setMethodName
public boolean setMethodName(java.lang.String method)
Sets the method name.- Parameters:
method- The method name as "method" if instance, "class.method" if static, empty string for none.- Returns:
- true for changed, false for no change.
setMethodName
public boolean setMethodName(java.lang.String method, IComplexOperation op)Sets the method name.- Parameters:
method- The method name as "method" if instance, "class.method" if static, empty string or null for none.op- The complex operation for undo/redo.- Returns:
- true for changed, false for no change.
getMethodName
public java.lang.String getMethodName()
Gets the method name, instance or static.- Returns:
- The method name as "method" if instance, "class.method" if static, empty string for none.
equalsErrors
protected boolean equalsErrors(PropError pe1, PropError pe2, int how)
Processes error property verification. The default processing is to verify the two error propertiespe1andpe2for equality ifincludeErrorsis 0 or 1, and returns true if the value is 2=no comparison with error properties.Override to verify property errors for reference properties.
- Overrides:
equalsErrorsin classGProp<GProp<?>[]>- Parameters:
pe1- The first error property, may be null.pe2- The second error property, may be null.how- Flags EQC_* values for equal checking.- Returns:
- Equality flag depending on
includeErrorsvalue.
initializeElement
protected void initializeElement(org.w3c.dom.Element element)
Called when the XML file for the property tree is serialized from properties. The property should fill attributes and nodes with appropriate information.- Overrides:
initializeElementin classPropCnr- Parameters:
element- TheElementto initialize.
initializeProp
public void initializeProp(org.w3c.dom.Element element) throws PropExceptionCalled to initialize the property from anElement. The property should initialize itself from attributes and nodes with appropriate information.- Overrides:
initializePropin classPropCnr- Parameters:
element- TheElement.- Throws:
PropException- when the initialization fails.
getRuntimeMethod
public java.lang.reflect.Method getRuntimeMethod()
Gets the loaded method for runtime.- Returns:
- The loaded method, or null for none.
onPrepare
protected void onPrepare(IAppOwner appOwner, IModuleOwner moduleOwner, boolean isPostCall, java.util.List<java.lang.Throwable> errors) throws PropException
Called when the application is being prepared. The order ofonPreparecalls is always parent first, the children. The method is called twice, first time withisPostCallset tofalse, then a second time withtrue.- Overrides:
onPreparein classGProp<GProp<?>[]>- Parameters:
appOwner- The application owner.moduleOwner- The Module owner.isPostCall- Flag indicating this is a post-call.errors- A list of errors that occurred but did not cause an abort.- Throws:
PropException- For property errors during the application preparation to need to abort.
lookupMethod
public java.lang.reflect.Method lookupMethod(ClassReference classReference, java.util.List<java.lang.Throwable> errors, java.lang.Class<?>... parameterTypes)
Called when the application is being prepared by the owner of the method reference to look-up the method with the specified parameters.- Parameters:
classReference- The class reference instance, or null for static methods.errors- A list of errors that occurred but did not cause an abort.parameterTypes- The list of parameters.