Package com.iizix.server.app.prop
Class ModuleProjectPropCnr
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizix.server.app.prop.ModuleProjectPropCnr
- All Implemented Interfaces:
EventListener,IGProp<GProp<?>[]>,IInitializePropMgr,IModuleOwner,IModuleProjectPropProvider,IPropCnr,java.lang.Cloneable
- Direct Known Subclasses:
EditorModuleProjectPropCnr
public class ModuleProjectPropCnr extends PropCnr implements IModuleOwner, IInitializePropMgr, IModuleProjectPropProvider
The module root property container.- 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 ModuleProjectPropCnr()Creates a Module project property container without a name.ModuleProjectPropCnr(Atom propertyAtom)Creates a Module project property container with a name.ModuleProjectPropCnr(Atom propertyAtom, java.io.File developmentDir, PropMgr serverPropMgr)Creates a Module project property container with a name when loaded from the Server in Development mode.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidassignClassLoader(JarClassLoader classLoader)Assigns the class loader of the Module project.ModuleProjectPropCnrclone()Cloning is not supported.java.lang.StringgetAliasName(GProp<?> requestor, java.lang.String projectName)Gets an alias name for a project name, the alias does NOT begin with "*".JarFilePathgetClassPathInfo(IJarFile jar, java.util.Set<java.lang.String> appModules, java.util.Set<JarFilePath> externalURLs, java.util.Set<java.io.File> externalResources, java.util.Set<java.lang.String> dependentModules)Gets the information to set-up the classpath for the module.java.io.FilegetDevelopmentDirectory()Gets the directory of the Module project when running in development mode.IJarFilegetJarFile()Gets the Jar file that contains the Module model or null if running in development mode.java.lang.ClassLoadergetModuleClassLoader()Gets the class loader of the Module project.java.util.List<java.lang.String>getPossibleLanguages()Gets the possible languages defined in text files that can be used for the application.java.lang.StringgetProjectName(GProp<?> requestor, java.lang.String alias)Gets the project name from an alias, the alias does NOT begin with "*".GProp<?>getPropFromReference(GProp<?> requestor, java.lang.String ref)Internal function for getPropFromReference(ref).PropMgrgetPropRootPropMgr()Gets the Property Manager used for communication for the root container.PushPropsgetPushProps()Gets the Push Notification properties.PWAPropsgetPWAProps()Gets the Progressive Web App (PWA) properties.ModuleProjectPropCnrgetRootFromName(GProp<?> requestor, java.lang.String module)Gets the module root for a name.java.lang.StringgetRootName(GProp<?> requestor)Gets and checks if this container is the root.ModuleProjectSettingsgetSettings()Gets the settings.voidinitialize(PropMgr propMgr)Initializes the Property Manager instance for the property.booleanisPropReferenceTreeValid()Verifies if the tree is valid for reference creation.booleanisPropRoot()Checks if this is a root property container.booleanisUserAuthenticationAlwaysRequired()Returns if the application requires user authentication every time it's started.protected voidonPropDispose()Property disposed of.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, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientSessionGyro, getClientWorker, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, 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, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onEventSelf, 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, 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, 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
ModuleProjectPropCnr
public ModuleProjectPropCnr()
Creates a Module project property container without a name.
ModuleProjectPropCnr
public ModuleProjectPropCnr(Atom propertyAtom)
Creates a Module project property container with a name.- Parameters:
propertyAtom- The property atom.
ModuleProjectPropCnr
public ModuleProjectPropCnr(Atom propertyAtom, java.io.File developmentDir, PropMgr serverPropMgr)
Creates a Module project property container with a name when loaded from the Server in Development mode.- Parameters:
propertyAtom- The property atom.developmentDir- The development directory.
Method Detail
onPropDispose
protected final void onPropDispose()
Property disposed of. This will close any open class loaders.- Overrides:
onPropDisposein classPropCnr
initialize
public final void initialize(PropMgr propMgr)
Initializes the Property Manager instance for the property.- Specified by:
initializein interfaceIInitializePropMgr- Parameters:
propMgr- The Property Manager.
getJarFile
public final IJarFile getJarFile()
Gets the Jar file that contains the Module model or null if running in development mode.- Returns:
- The Jar file or null when running in development mode.
- Throws:
java.lang.NullPointerException- When not in the server running mode.
getDevelopmentDirectory
public final java.io.File getDevelopmentDirectory()
Gets the directory of the Module project when running in development mode.- Returns:
- The directory, or null if not in development mode.
getClassPathInfo
public final JarFilePath getClassPathInfo(IJarFile jar, java.util.Set<java.lang.String> appModules, java.util.Set<JarFilePath> externalURLs, java.util.Set<java.io.File> externalResources, java.util.Set<java.lang.String> dependentModules) throws java.io.IOException
Gets the information to set-up the classpath for the module.- Parameters:
jar- The Jar file, null when in development mode.appModules- The set of all app modules used in this app.externalURLs- Set of URL's that are filled in and required for the module project, filled in by this method.externalResources- Set of external resources that must be watched by hot-deploy for changes, filled in by this method.dependentModules- Set of modules that this module depends on, filled in by this method.- Returns:
- The JarFilePath for the module's classes.
- Throws:
java.io.IOException
clone
public final ModuleProjectPropCnr clone() throws java.lang.CloneNotSupportedException
Cloning is not supported.
getSettings
public final ModuleProjectSettings getSettings()
Gets the settings.
isUserAuthenticationAlwaysRequired
public final boolean isUserAuthenticationAlwaysRequired()
Returns if the application requires user authentication every time it's started.- Returns:
- true for user authentication always required, by password or fingerprint.
isPropRoot
public final boolean isPropRoot()
Checks if this is a root property container.- Specified by:
isPropRootin interfaceIGProp<GProp<?>[]>- Overrides:
isPropRootin classGProp<GProp<?>[]>- Returns:
- true, always.
isPropReferenceTreeValid
public final boolean isPropReferenceTreeValid()
Verifies if the tree is valid for reference creation. This method is typically overridden in a root property that has a Property Manager owner that in turn is checked for a particular configuration (e.g. Client-related references such as LabelForReference that does not create references when communicating).- Specified by:
isPropReferenceTreeValidin interfaceIGProp<GProp<?>[]>- Overrides:
isPropReferenceTreeValidin classGProp<GProp<?>[]>- Returns:
- true if the root property manager is found, false otherwise.
getPropRootPropMgr
public final 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:
getPropRootPropMgrin interfaceIGProp<GProp<?>[]>- Overrides:
getPropRootPropMgrin classGProp<GProp<?>[]>- Returns:
- The Server Property Manager.
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:
getRootNamein classGProp<GProp<?>[]>- Parameters:
requestor- The requestor property.- Returns:
- The name of the project followed by ':'.
getRootFromName
public final ModuleProjectPropCnr getRootFromName(GProp<?> requestor, java.lang.String module)
Gets the module root for a name. As this is the Designer, the module is the project.- Specified by:
getRootFromNamein interfaceIModuleProjectPropProvider- Overrides:
getRootFromNamein classGProp<GProp<?>[]>- Parameters:
module- The module name (without colon), i.e. the project name in the Designer.requestor- The requestor property.- Returns:
- The root property container, or null if the module name is not found.
getProjectName
public final java.lang.String getProjectName(GProp<?> requestor, java.lang.String alias)
Gets the project name from an alias, the alias does NOT begin with "*".- Specified by:
getProjectNamein interfaceIModuleProjectPropProvider- Overrides:
getProjectNamein classGProp<GProp<?>[]>- Parameters:
requestor- The requestor property.alias- The alias name.- Returns:
- The project name for the alias, or null if not found.
getAliasName
public final 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:
getAliasNamein 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.
getPropFromReference
public final GProp<?> getPropFromReference(GProp<?> requestor, java.lang.String ref)
Internal function for getPropFromReference(ref).Gets a property from a reference name. This can be called from any property in the property tree, and will direct the request to the root property.
- Overrides:
getPropFromReferencein classGProp<GProp<?>[]>- Parameters:
requestor- The requestor property.ref- The reference string.- Returns:
- The property with the reference in question, or null if not found.
assignClassLoader
public final void assignClassLoader(JarClassLoader classLoader)
Assigns the class loader of the Module project.- Parameters:
classLoader- The class loader.- Throws:
java.lang.IllegalStateException- If the class loader is already created.
getModuleClassLoader
public final java.lang.ClassLoader getModuleClassLoader()
Gets the class loader of the Module project.- Specified by:
getModuleClassLoaderin interfaceIModuleOwner- Returns:
- A ClassLoader for the user classes.
getPossibleLanguages
public final java.util.List<java.lang.String> getPossibleLanguages()
Gets the possible languages defined in text files that can be used for the application.- Returns:
- A cached read-only list of possible languages.
getPushProps
public PushProps getPushProps()
Gets the Push Notification properties.- Returns:
- The Push Notifications property container, or
nullfor none.
getPWAProps
public PWAProps getPWAProps()
Gets the Progressive Web App (PWA) properties.- Returns:
- The Progressive Web App property container, or
nullfor none.