Package com.iizigo.prop
Class FilePropCnr
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizix.prop.FileURIPropCnr
- com.iizigo.prop.FilePropCnr
 
 
 
 
- All Implemented Interfaces:
- IPropDesigner,- ISynchronizeEclipseMarkers,- EventListener,- IGProp<GProp<?>[]>,- IPropCnr,- ISynchronizeMarkers,- java.lang.Cloneable,- java.lang.Runnable,- org.eclipse.core.runtime.IAdaptable
 - public class FilePropCnr extends FileURIPropCnr implements IPropDesigner, java.lang.Runnable, ISynchronizeEclipseMarkers A PropCnr that can refer to an IFile object can be loaded and saved as well as checked for modification from last time. An exception can also be set for load errors.- 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 - Constructor - Description - FilePropCnr()Creates a FilePropCnr for the designer with the specified name with a null value.- FilePropCnr(Atom propertyAtom, org.eclipse.core.resources.IFile file)Creates a FilePropCnr for the designer with the specified name with a null value.
 - Method Summary- All Methods Static Methods Instance Methods Concrete Methods - Modifier and Type - Method - Description - void- attachEditor(PropEditorPart editor)Attaches an Editor to this file.- FilePropCnr- clone()Clone must be overridden.- void- detachEditor(PropEditorPart editor)Detaches an Editor from this file.- static FilePropCnr- fromProperty(GProp<?> property)Gets a FilePropCnr from a property that should be the FilePropCnr itself or a child.- PropEditorPart- getActiveEditor()Gets the active or topmost attached editor.- PropEditorPart[]- getAttachedEditors()Gets the attached editors.- PropCnr- getDataContainer()Gets the data property container for the file.- ResourceDesignerProp- getDesigner()Gets the Designer Extension for Properties.- java.io.File- getFile()Gets the file for this property.- java.lang.String- getFileName()Gets the file name (full path name) for this property.- org.eclipse.core.resources.IFile- getIFile()Gets the file.- long- getModificationStamp()Gets the file modification stamp of the resource if found.- long- getModificationTime()Returns the modification time of the resource.- FilePropSaveable- getSaveable()Gets the Saveable instance for this file.- long- getSize()Returns the size of the resource in bytes.- java.net.URL- getURL()Gets the file name URI for this property.- boolean- hasActiveEditors()Checks for active editors.- boolean- isAssetFile()Checks if this file is located in the Assets directory.- void- onCompletedLoading(PropCnr dataContainerToBe)Called when the file completed its loading from the Module model.- void- onEventSelf(GEvent event)Called when a property event is send to this property.- protected void- onPropDispose()Called when a property is disposed of by delete/remove in a container, or by the dispose method.- void- run()Invoked to check for dirty flag.- void- saveFile(org.eclipse.core.runtime.IProgressMonitor monitor)Saves the file if a Shell is not available.- Methods inherited from class com.iizix.prop.FileURIPropCnr- getChildReferencePropName, getPropFromReference, getPropReferenceTarget, isPropFile, isPropFolder
 - 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, 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, 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, equalsErrors, equalsObj, equalsPropValue, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, 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, getPropIndex, getPropName, getPropPath, getPropPath, 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, 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, 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, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropBaseReference, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getReferencePropName, getReferences, getRelativePropName, getRootParent, getTreeLock, getValueClasses, getVSReference, hasChanged, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, list, list, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onPropTreeInitialized, onRemoteEvent, removePropError, removePropListener, renameProp, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toElementString, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropType, validatePropValue, verify, verifyHasPropertyItem, warning, warning, warning
 - Methods inherited from interface com.iizix.prop.IPropCnr- addProp, addProp, addProp2, addProp2, canRequestFocus, canRequestFocus, canRequestFocus, containsProp, containsProp, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, enablePropCommunication, enablePropHashMap, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsError, getExtendsName, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropCnr, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getString, getString, getString, getString, hasFocus, initializeExtendsFramework, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsRoot, isPropAddRemoveAllowed, isPropExtended, isSibling, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, requestFocus, requestFocusEx, setBool, setBool, setBool, setBool, 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, usePropHashMap, usesPropIndex, validateClassInstances
 - Methods inherited from interface com.iizigo.prop.IPropDesigner- findIResource, getAdapter
 - Methods inherited from interface com.iizigo.prop.ISynchronizeEclipseMarkers- synchronizeEclipseMarkers
 
 
- Constructor Detail- FilePropCnr- public FilePropCnr() Creates a FilePropCnr for the designer with the specified name with a null value. This constructor is only used by the factory to check validity, and nothing else. Never instantiate this class.
 - FilePropCnr- public FilePropCnr(Atom propertyAtom, org.eclipse.core.resources.IFile file) Creates a FilePropCnr for the designer with the specified name with a null value.- Parameters:
- propertyAtom- the property atom.
- file- the file.
 
 
 - Method Detail- fromProperty- public static FilePropCnr fromProperty(GProp<?> property) Gets a FilePropCnr from a property that should be the FilePropCnr itself or a child.- Parameters:
- property- The property.
- Returns:
- The FilePropCnr of the property, null if not found.
 
 - getDataContainer- public PropCnr getDataContainer() Gets the data property container for the file.- Returns:
- The data property container (Atom.DATA_CONTAINER), or null for none.
 
 - getSaveable- public FilePropSaveable getSaveable() Gets the Saveable instance for this file.- Returns:
- The Saveable instance, null when file hasn't been loaded yet (thus this call is too early and this shouldn't happen, otherwise the Editor requesting the Saveable has a problem with it's delayed start-up when projects are loaded or workbench started).
 
 - onCompletedLoading- public void onCompletedLoading(PropCnr dataContainerToBe) Called when the file completed its loading from the Module model.- Parameters:
- dataContainerToBe- The FilePropCnr data container to-be, not yet added, null for default.
 
 - onPropDispose- protected void onPropDispose() Called when a property is disposed of by delete/remove in a container, or by the dispose method.- This call is done just at the end of the delete/remove routine in the container, without synchronization. - During this call, whatever components that e.g. the client needs to disposed of is done. - Subclasses needing to perform some intelligent operations upon deletion should do it by overloading this method and always call the - super.onPropDispose()method.- Overrides:
- onPropDisposein class- PropCnr
 
 - attachEditor- public void attachEditor(PropEditorPart editor) Attaches an Editor to this file.
 - detachEditor- public void detachEditor(PropEditorPart editor) Detaches an Editor from this file.
 - hasActiveEditors- public boolean hasActiveEditors() Checks for active editors.
 - getAttachedEditors- public PropEditorPart[] getAttachedEditors() Gets the attached editors.
 - getActiveEditor- public PropEditorPart getActiveEditor() Gets the active or topmost attached editor.- Returns:
- The editor part, or null for none.
 
 - getURL- public java.net.URL getURL() Gets the file name URI for this property.- Overrides:
- getURLin class- FileURIPropCnr
 
 - getFile- public java.io.File getFile() Gets the file for this property.- Overrides:
- getFilein class- FileURIPropCnr
- Returns:
- null if not found.
 
 - getModificationStamp- public long getModificationStamp() Gets the file modification stamp of the resource if found.- Returns:
- -1 if not found.
 
 - getIFile- public org.eclipse.core.resources.IFile getIFile() Gets the file.- Returns:
- The file resource or null if not found.
 
 - getFileName- public java.lang.String getFileName() Gets the file name (full path name) for this property.
 - getDesigner- public ResourceDesignerProp getDesigner() Gets the Designer Extension for Properties.- Specified by:
- getDesignerin interface- IPropDesigner
- Returns:
- The instance of the Designer Extension.
 
 - isAssetFile- public boolean isAssetFile() Checks if this file is located in the Assets directory. This is only handled in the Editor.- Overrides:
- isAssetFilein class- FileURIPropCnr
- Returns:
- Always true in the Server or Client.
 
 - clone- public FilePropCnr clone() throws java.lang.CloneNotSupportedException Clone must be overridden.- Overrides:
- clonein class- FileURIPropCnr
- Throws:
- java.lang.CloneNotSupportedException- If a subclass doesn't allow cloning, e.g. the client properties.
 
 - 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:
- onEventSelfin interface- IGProp<GProp<?>[]>
- Overrides:
- onEventSelfin class- GProp<GProp<?>[]>
- Parameters:
- event- The property event.
 
 - run- public void run() Invoked to check for dirty flag.- Specified by:
- runin interface- java.lang.Runnable
 
 - saveFile- public void saveFile(org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreExceptionSaves the file if a Shell is not available.- Parameters:
- monitor- The progress monitor.
- Throws:
- org.eclipse.core.runtime.CoreException- For file errors.
 
 - getSize- public long getSize() Returns the size of the resource in bytes.- Overrides:
- getSizein class- FileURIPropCnr
- Returns:
- The size, or -1 if resource is not found.
 
 - getModificationTime- public long getModificationTime() Returns the modification time of the resource.- Overrides:
- getModificationTimein class- FileURIPropCnr
- Returns:
- The modification time, or zero if resource is not found.