Package com.iizigo.project
Class ProjectRootPropCnr
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizigo.project.ProjectRootPropCnr
- All Implemented Interfaces:
EventListener
,IGProp<GProp<?>[]>
,IPropCnr
,java.lang.Cloneable
- Direct Known Subclasses:
JavaProjectRootPropCnr
,ModuleRootPropCnr
public abstract class ProjectRootPropCnr extends PropCnr
The project root property container. This class is used for both Java projects and Module projects, the latter uses a subclasses instance of ProjectRootPropCnr.- Author:
- Christopher Mindus
Field Summary
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 protected
ProjectRootPropCnr(org.eclipse.core.resources.IProject project)
Default for clipboard/drag-drop.
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static void
doReValidateReferences(PropCnr pc)
Rechecks and validates the references for a property container, with a "null" progress monitor that cannot be canceled.static void
doValidateReferences(PropCnr pc, boolean doReCheck)
Validates the references for a property container.java.lang.String
getAliasName(GProp<?> requestor, java.lang.String projectName)
Gets an alias name for a project name, the alias does NOT begin with "*".static GProp<?>
getAnyPropFromReference(java.lang.String reference)
Gets a property from a reference, when no root property is available.static GProp<?>
getAnyPropFromReference(org.eclipse.core.resources.IResource resource, java.lang.String reference)
Gets a property from a reference, when no root property is available.EnvProps
getEnvironment()
Gets the environment properties.org.eclipse.core.resources.IProject
getProject()
Gets the project.java.lang.String
getProjectName(GProp<?> requestor, java.lang.String alias)
Gets the project name from an alias, the alias does NOT begin with "*".PropMgr
getPropRootPropMgr()
Gets the Property Manager used for communication for the root container.PropCnr
getRootFromName(GProp<?> requestor, java.lang.String module)
Gets the module root for a name.java.lang.String
getRootName(GProp<?> requestor)
Gets and checks if this container is the root.boolean
isPropRoot()
Checks if this is a root property container.void
onEventSelf(GEvent event)
Called when a property event is send to this property.protected abstract void
onResetDependencyModulesAndProjects()
Method called to clear and initialize the initially dependent projects and modules of the project.void
resolveReferences(boolean doReCheck)
Resolves references for this container and its children by sending resolve references events.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, initializeElement, initializeExtendsFramework, initializeProp, 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, 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, equalsErrors, equalsObj, equalsPropValue, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientSessionGyro, getClientWorker, getConstraints, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getRelativePropName, 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, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onPrepare, 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, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, 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, isPropVirtualized, 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, verifyHasPropertyItem, warning, warning, warning
Methods inherited from interface com.iizix.prop.IPropCnr
canRequestFocus, canRequestFocus, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized
Method Detail
getAnyPropFromReference
public static GProp<?> getAnyPropFromReference(java.lang.String reference)
Gets a property from a reference, when no root property is available. This method does not support relative references ".:/path/name" nor aliases "*alias:/path/name".- Parameters:
reference
- The reference name.- Returns:
- A property, or null if not found.
getAnyPropFromReference
public static GProp<?> getAnyPropFromReference(org.eclipse.core.resources.IResource resource, java.lang.String reference)
Gets a property from a reference, when no root property is available. If the resource is located in a Module project, alias references "*alias:/path/name" and relative references ".:/path/name" is supported.- Parameters:
resource
- Any resource in a project, or the project.reference
- The reference name.- Returns:
- A property, or null if not found.
getProject
public final org.eclipse.core.resources.IProject getProject()
Gets the project.
isPropRoot
public final boolean isPropRoot()
Checks if this is a root property container. It is overridden by the root property.- Specified by:
isPropRoot
in interfaceIGProp<GProp<?>[]>
- Overrides:
isPropRoot
in classGProp<GProp<?>[]>
- Returns:
- true for the root, false otherwise.
getEnvironment
public EnvProps getEnvironment()
Gets the environment properties. The default is to delegate the request to the parent container.- Specified by:
getEnvironment
in interfaceIGProp<GProp<?>[]>
- Overrides:
getEnvironment
in classGProp<GProp<?>[]>
- Returns:
- The EnvProps for the client/server environment or null if not found.
getPropRootPropMgr
public PropMgr getPropRootPropMgr()
Gets the Property Manager used for communication for the root container. If this is not the root container, the parent function is called upwards in tree.- Specified by:
getPropRootPropMgr
in interfaceIGProp<GProp<?>[]>
- Overrides:
getPropRootPropMgr
in classGProp<GProp<?>[]>
- Returns:
- The Property Manager, or null when not attached to a root.
getRootName
public final java.lang.String getRootName(GProp<?> requestor)
Gets and checks if this container is the root. The name returned is in the Designer"module:"
.- Overrides:
getRootName
in classGProp<GProp<?>[]>
- Parameters:
requestor
- The requestor property.- Returns:
- The name of the project followed by ':'.
getRootFromName
public PropCnr getRootFromName(GProp<?> requestor, java.lang.String module)
Gets the module root for a name. As this is the Designer, the module is the project.- Overrides:
getRootFromName
in classGProp<GProp<?>[]>
- Parameters:
requestor
- The requestor property.module
- The module name (without colon), i.e. the project name in the Designer.- Returns:
- The root property container, or null if the module name is not found.
getProjectName
public java.lang.String getProjectName(GProp<?> requestor, java.lang.String alias)
Gets the project name from an alias, the alias does NOT begin with "*".- Overrides:
getProjectName
in classGProp<GProp<?>[]>
- Parameters:
requestor
- The requestor property.alias
- The alias.- Returns:
- The project name for the alias, or null if not found.
getAliasName
public java.lang.String getAliasName(GProp<?> requestor, java.lang.String projectName)
Gets an alias name for a project name, the alias does NOT begin with "*".- Overrides:
getAliasName
in classGProp<GProp<?>[]>
- Parameters:
requestor
- The requestor property.projectName
- The project name (without ending ':').- Returns:
- The alias name without leading '*' for the project name, or null if not found.
doReValidateReferences
public static void doReValidateReferences(PropCnr pc)
Rechecks and validates the references for a property container, with a "null" progress monitor that cannot be canceled.- Parameters:
pc
- The property to re-verify, careful of the container depth for speed and CPU usage.
doValidateReferences
public static void doValidateReferences(PropCnr pc, boolean doReCheck)
Validates the references for a property container.- Parameters:
doReCheck
- If a re-check of all references must be done.
resolveReferences
public void resolveReferences(boolean doReCheck)
Resolves references for this container and its children by sending resolve references events.- Overrides:
resolveReferences
in classPropCnr
- Parameters:
doReCheck
- Recheck flag, avoidtrue
unless really required.
onResetDependencyModulesAndProjects
protected abstract void onResetDependencyModulesAndProjects()
Method called to clear and initialize the initially dependent projects and modules of the project.
onEventSelf
public void onEventSelf(GEvent event)
Called when a property event is send to this property.A subclass can override this method to perform appropriate processing and is not required to call
super.onEventSelf(e)
.- Specified by:
onEventSelf
in interfaceIGProp<GProp<?>[]>
- Overrides:
onEventSelf
in classGProp<GProp<?>[]>
- Parameters:
event
- The property event.