Class FixedVirtualizedAbstractReference<TARGET extends IPropCnr>
- All Implemented Interfaces:
EventListener
,IGProp<ReferenceString>
,IPropReference
,IReferencingGProp
,Cloneable
- Direct Known Subclasses:
AbstractFixedVirtualizedBaseRelativeReference
,AssetReference
,ContextMenuReference
,DatabaseTransactionReference
,ImageReference
,PanelPartReference
,ScreenActionReference
,SelectorReference
,TextTableReference
,VSParticipantReference
,WebServiceReference
When virtualizing this property reference, the referenced target from the original is "burned in" as a fixed value for the virtualized copy. This class is typically used for references that cannot be modified dynamically, e.g. a reference to an image, data connector, text ID, etc.
- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.prop.IPropReference
IPropReference.IRefType, IPropReference.ReferenceChangeEvent, IPropReference.RefType
Field Summary
Fields inherited from class com.iizix.prop.AbstractReference
ERROR_ID, hasBeenValidated, QUICK_FIX_DELETE_PROP, reference
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 Summary
ModifierConstructorDescriptionprotected
Creates a Abstract Reference property with no name and with a null value.protected
FixedVirtualizedAbstractReference
(Atom propertyAtom) Creates a Abstract Reference property with the specified name with a null value.protected
FixedVirtualizedAbstractReference
(Atom propertyAtom, String newValue) Creates a Abstract Reference property with the specified name and value.Method Summary
Modifier and TypeMethodDescriptionprotected void
Called to clear the fixed reference in case the reference is changed.protected TARGET
Support for a fixed reference.protected void
Called when the property has been cleared from error.protected void
Called when the property has an error.protected void
Called when the reference may have changed.protected void
Called when the property has been resolved.protected void
Called when the target is broken.protected void
Called when the reference is disposed of.protected void
onResolved
(TARGET target) Called when the target is resolved.protected final void
onVirtualizationCompleted
(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace, boolean isPostResolve) Called when virtualization completed.protected String
Returns the parameter string representing the state of this event.protected final FixedVirtualizedAbstractReference
<TARGET> virtualize
(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace) Call this method to "virtualize" a property tree.Methods inherited from class com.iizix.prop.AbstractReference
appendPropValue, assignError, assignNotFoundError, changeReference, checkCreateReference, clearError, clone, createUpdateReference, disposeReference, doPostResolve, equalsErrors, equalValues, getAbsoluteReference, getDirectReferencedTarget, getDirectReferencedTargetSet, getLookupPropReference, getPropertyClass, getPropValue0, getReference, getReferenceString, getReferenceType, getTargetReference, getTargetReference, getValueClasses, initializeValue, isReferenceValid, isReferencingMultipleTargets, isValid, modifyPropValue, onEventSelf, onProjectNameChanged, onPropDispose, onPropParentChanged, onRefactored, onReferenceEvent, onReferenceEvent, setLookedUpReference, setPropValue, toNativeValue0, updateReference, validatePropType, validatePropValue, validateReferenceScope, wouldValidate
Methods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, appendProp, convertPropError, dispose, equals, equals, equalsObj, equalsPropValue, equalsTree, 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, getReferencePropNameNoAssert, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParentNoAssert, getTreeLock, getVSReference, hasChanged, hasCircularReferencesError, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeElement, initializeGElement, initializeGProp, initializeProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, 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, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onPrepare, onPropInvalidateCache, onPropTreeInitialized, onPropValueSet, onRemoteEvent, 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, verify, warning, warning, warning
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.iizix.prop.IReferencingGProp
getParent, getReferencingOwner
Field Details
fixedTarget
Target fixed at virtualization.
Constructor Details
FixedVirtualizedAbstractReference
protected FixedVirtualizedAbstractReference()Creates a Abstract Reference property with no name and with a null value.FixedVirtualizedAbstractReference
Creates a Abstract Reference property with the specified name with a null value.- Parameters:
propertyAtom
- the property atom.
FixedVirtualizedAbstractReference
Creates a Abstract Reference property with the specified name and value.- Parameters:
propertyAtom
- the property atom.newValue
- the new string value for the property.
Method Details
getFixedTarget
Support for a fixed reference.- Overrides:
getFixedTarget
in classAbstractReference<TARGET extends IPropCnr>
- Returns:
- The fixed reference to return in cases the target reference is needed, and also serves as a verification if a new reference should be created or not. Returning
null
causes normal behavior (default).
clearFixedTarget
protected void clearFixedTarget()Called to clear the fixed reference in case the reference is changed. This will revert back to normal processing.The "clone" method does not change to be overridden to clear the fixed target as this method is called during cloning.
- Overrides:
clearFixedTarget
in classAbstractReference<TARGET extends IPropCnr>
informResolved
protected void informResolved()Called when the property has been resolved. Subclasses override this method to implement some behavior. The default implementation performs nothing, i.e. there is no need to callsuper.informResolved()
.- Overrides:
informResolved
in classAbstractReference<TARGET extends IPropCnr>
informError
protected void informError()Called when the property has an error. Subclasses override this method to implement some behavior. The default implementation performs nothing, i.e. there is no need to callsuper.informError()
.- Overrides:
informError
in classAbstractReference<TARGET extends IPropCnr>
informClearError
protected void informClearError()Called when the property has been cleared from error. Subclasses override this method to implement some behavior. The default implementation performs nothing, i.e. there is no need to callsuper.informClearError()
.- Overrides:
informClearError
in classAbstractReference<TARGET extends IPropCnr>
onReferenceDisposed
protected void onReferenceDisposed()Called when the reference is disposed of.- Overrides:
onReferenceDisposed
in classAbstractReference<TARGET extends IPropCnr>
informReference
protected void informReference()Called when the reference may have changed.Subclasses can override this method to perform other functionality.
virtualize
protected final FixedVirtualizedAbstractReference<TARGET> virtualize(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace) throws CloneNotSupportedException, PropException Call this method to "virtualize" a property tree. This method is used at runtime in the Server for the application session of virtual instances of VirtualSpace, but also virtual instances of panels, for the individual client session. The VirtualSpace is virtualized once for the application session and is shared for parallel client sessions.This method is similar to cloning, but enables references that are already resolved to remain if they point to a shared instance, e.g. the VirtualSpace pointing to its participants in the application property container shared instance, or a panel with references to text IDs, assets, etc.
- Overrides:
virtualize
in classGProp<ReferenceString>
- Parameters:
appGyro
- The application gyro instance performing the virtualization.clientGyro
- The client gyro session, can benull
if not initialized from the client gyro.virtualSpace
- The virtualized VirtualSpace.- Returns:
- The virtualized property.
- Throws:
CloneNotSupportedException
- If a subclass doesn't allow cloning, e.g. the client properties.PropException
- For property errors during the virtualization.IllegalStateException
- IllegalStateException if the property is in an invalid state, e.g. in virtualizing state or if in
onVirtualizationCompleted
protected final void onVirtualizationCompleted(IAppSessionGyro appGyro, IClientSessionGyro clientGyro, VirtualSpace virtualSpace, boolean isPostResolve) Called when virtualization completed.This method is called to the entire tree of the newly virtualized property container.
- Overrides:
onVirtualizationCompleted
in classGProp<ReferenceString>
- Parameters:
appGyro
- The application gyro instance performing the virtualization.clientGyro
- The client gyro session, can benull
if not initialized from the client gyro.virtualSpace
- The virtualized VirtualSpace.isPostResolve
- Flag indicating this call is done after references are attempted to be resolved.
paramString
Returns the parameter string representing the state of this event. This string is useful for debugging. Subclasses adds extra information to the string by preceding it with a comma followed by the extra information.- Overrides:
paramString
in classAbstractReference<TARGET extends IPropCnr>
- Returns:
- the parameter string of this event.
onResolved
Called when the target is resolved.- Parameters:
target
- The target.
onBroken
Called when the target is broken.- Parameters:
target
- The target.