Package com.iizix.db.prop
Class ResultSetColumnProp
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizix.prop.vs.AbstractVSVariable<VSColumnHeader,VSTableColumnReference>
- com.iizix.db.prop.ResultSetColumnProp
- All Implemented Interfaces:
EventListener
,IGProp<GProp<?>[]>
,IPropCnr
,IVSColumnBestValueListener
,IVSColumnListener
,IVSComponentListener
,IVSComponentState
,IVSTableColumnReferenceOwner
,java.lang.Cloneable
- Direct Known Subclasses:
EditorResultSetColumnProp
public class ResultSetColumnProp extends AbstractVSVariable<VSColumnHeader,VSTableColumnReference> implements IVSTableColumnReferenceOwner, IVSColumnListener
The result set Column property that connects the column name in a result set with a VSColumnHeader.- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.prop.vs.IVSComponentState
IVSComponentState.State
Field Summary
Fields Modifier and Type Field Description static java.lang.String
COLUMN_LABEL
The name of the property: Column Label.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 ResultSetColumnProp()
Creates a ResultSetColumnProp property container with the specified name with a null value.ResultSetColumnProp(Atom propertyAtom)
Creates a ResultSetColumnProp property container with the specified name with a null value.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ResultSetColumnProp
clone()
Clones this VSVariable instance.Value.Type
getBestVSColumnHeaderValueType(VSRelativeReference<?> reference)
Requests the value type that would best suit the listener.int
getColumnIndex()
Gets the column index in the Result Set.java.lang.String
getColumnLabel()
Gets the column label as the SQL statement defines it.java.lang.String
getColumnName()
Gets the column label as the SQL statement defines it.java.lang.String
getDescription()
Gets the column description.ResultSetProps
getResultSetProps()
Gets the Result Set properties.int
getSQLDataType()
Gets the SQL data type.java.lang.String
getSQLDataTypeString()
Gets the SQL data type string.VSColumnHeader
getVSColumn()
Gets the VSColumnHeader.java.lang.Class<VSColumnHeader>
getVSPropertyClass()
Gets the class wanted for the VS component being referenced.java.lang.Class<VSTableColumnReference>
getVSReferenceClass()
Gets the class wanted for VS references.VSTable
getVSTable(VSTableColumnReference ref)
Gets the VSTable for a VSTableColumnReference instance.VSReferenceOwnerData<VSTable,VSTableReference>
getVSTableReferenceOwnerData()
Gets the table reference owner data for the table column reference.boolean
isNullable()
Checks if NULL is allowed for values in this column.void
onBroken(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been broken, i.e.void
onCellValueChanged(VSColumnHeader column, VSField cell, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)
Called when the cell value is set in the column.void
onParentStateChanged(IVSComponent parent, IVSComponentState.State state, boolean on)
Called when the column changes state.void
onResolved(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been resolved.void
onRowAdded(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been added to the table.void
onRowRemoved(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been removed from the table.void
onSelectionChanged(VSColumnHeader column, VSRow row, int rowIndex, boolean isSelected)
Called when the row selection is changed to forward to column listeners.void
onSingleSelectionChanged(VSColumnHeader column, int rowIndex)
Called when the row selection in table single-selection mode is changed to forward to column listeners.void
onStateChanged(VSColumnHeader column, IVSComponentState.State state, boolean on)
Called when the table changes state.void
onStateChanged(VSColumnHeader column, VSField cell, IVSComponentState.State state, boolean on)
Called when a cell in the column changes state.protected void
setColumnIndex(int index)
Sets the column index.protected void
setColumnLabel(java.lang.String label)
Sets the column name, this method is used by the Designer.protected void
setColumnName(java.lang.String name)
Sets the column name, this method is used by the Designer.protected void
setNullable(boolean isAllowed)
Sets if NULL is allowed for values in this column.protected void
setSQLDataType(int type)
Sets the SQL data type.Methods inherited from class com.iizix.prop.vs.AbstractVSVariable
getVariableName, getVSTarget, getVSVariableReference, setVariableName
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, 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, equalsErrors, 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, 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, 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
Field Detail
COLUMN_LABEL
public static final java.lang.String COLUMN_LABEL
The name of the property: Column Label.- See Also:
- Constant Field Values
Constructor Detail
ResultSetColumnProp
public ResultSetColumnProp()
Creates a ResultSetColumnProp property container with the specified name with a null value.
ResultSetColumnProp
public ResultSetColumnProp(Atom propertyAtom)
Creates a ResultSetColumnProp property container with the specified name with a null value.- Parameters:
propertyAtom
- the property atom.
Method Detail
clone
public ResultSetColumnProp clone()
Clones this VSVariable instance.- Overrides:
clone
in classAbstractVSVariable<VSColumnHeader,VSTableColumnReference>
getResultSetProps
public ResultSetProps getResultSetProps()
Gets the Result Set properties.- Returns:
- The result set properties, or null if this property is orphaned.
getVSPropertyClass
public java.lang.Class<VSColumnHeader> getVSPropertyClass()
Gets the class wanted for the VS component being referenced.- Specified by:
getVSPropertyClass
in classAbstractVSVariable<VSColumnHeader,VSTableColumnReference>
- Returns:
- VSColumnHeader.class.
getVSReferenceClass
public java.lang.Class<VSTableColumnReference> getVSReferenceClass()
Gets the class wanted for VS references.- Specified by:
getVSReferenceClass
in classAbstractVSVariable<VSColumnHeader,VSTableColumnReference>
- Returns:
- VSTableColumnReference.class.
getVSTableReferenceOwnerData
public VSReferenceOwnerData<VSTable,VSTableReference> getVSTableReferenceOwnerData()
Gets the table reference owner data for the table column reference.- Specified by:
getVSTableReferenceOwnerData
in interfaceIVSTableColumnReferenceOwner
- Returns:
- The VSReferenceOwnerData instance, always non-null.
getVSTable
public VSTable getVSTable(VSTableColumnReference ref)
Gets the VSTable for a VSTableColumnReference instance.- Specified by:
getVSTable
in interfaceIVSTableColumnReferenceOwner
- Parameters:
ref
- The reference instance, null when property-editing the reference in the Designer.- Returns:
- The table for the reference, or null if not found.
getVSColumn
public VSColumnHeader getVSColumn()
Gets the VSColumnHeader.- Returns:
- The VSColumnHeader associated, or null for none (or unresolved).
setColumnIndex
protected void setColumnIndex(int index)
Sets the column index.This method is used internally by the Designer during creation of the SQL statement and should not be called elsewhere.
- Parameters:
index
- The column index.
getColumnIndex
public int getColumnIndex()
Gets the column index in the Result Set.- Returns:
- The column index, or -1 if SQL statement is not yet parsed in the Designer, or if the column has been left "hanging around" and not yet deleted (this is a problem with warning severity level). This value should NEVER be -1 in the Server, unless it's running in Development Mode!
setColumnName
protected void setColumnName(java.lang.String name)
Sets the column name, this method is used by the Designer.- Parameters:
name
- The name of the column.
getColumnName
public java.lang.String getColumnName()
Gets the column label as the SQL statement defines it.- Returns:
- The name of the column.
setColumnLabel
protected void setColumnLabel(java.lang.String label)
Sets the column name, this method is used by the Designer.- Parameters:
label
- The name of the column to set, or null to clear it.
getColumnLabel
public java.lang.String getColumnLabel()
Gets the column label as the SQL statement defines it.This is the label for the column specified with the SQL AS clause.
- Returns:
- The label of the column, or null for none.
setSQLDataType
protected void setSQLDataType(int type)
Sets the SQL data type.This method is used internally by the Designer during creation of the SQL statement and should not be called elsewhere.
- Parameters:
type
- The SQL data type for the column as defined byTypes
.
getSQLDataType
public int getSQLDataType()
Gets the SQL data type.- Returns:
- The SQL data type for the column as defined by
Types
, or 0 if SQL statement is not yet parsed in the Designer, or if the column has been left "hanging around" and not yet deleted (this is a problem with warning severity level). This value should NEVER be 0 in the Server, unless it's running in Development Mode!
getSQLDataTypeString
public java.lang.String getSQLDataTypeString()
Gets the SQL data type string.- Returns:
- The SQL data type for the column as defined by
Types
, or "unknown" if not found or undefined
isNullable
public boolean isNullable()
Checks if NULL is allowed for values in this column.- Returns:
- The Null-Allowed flag (i.e. NOT NOT NULL), default true.
setNullable
protected void setNullable(boolean isAllowed)
Sets if NULL is allowed for values in this column.- Parameters:
isAllowed
- The Null-Allowed flag (i.e. NOT NOT NULL).
getDescription
public java.lang.String getDescription()
Gets the column description.- Returns:
- A description, or null for none.
getBestVSColumnHeaderValueType
public Value.Type getBestVSColumnHeaderValueType(VSRelativeReference<?> reference)
Requests the value type that would best suit the listener.- Specified by:
getBestVSColumnHeaderValueType
in interfaceIVSColumnBestValueListener
- Parameters:
reference
- The VSRelativeReference instance holding the reference.- Returns:
- null if none is available.
onResolved
public void onResolved(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been resolved. UI components use this method to set its state according to the field.- Specified by:
onResolved
in interfaceIVSColumnListener
- Parameters:
column
- The target reference.reference
- The VSRelativeReference instance holding the reference.
onBroken
public void onBroken(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been broken, i.e. unresolved.- Specified by:
onBroken
in interfaceIVSColumnListener
- Parameters:
column
- The target reference.reference
- The VSRelativeReference instance holding the reference.
onStateChanged
public void onStateChanged(VSColumnHeader column, IVSComponentState.State state, boolean on)
Called when the table changes state.- Specified by:
onStateChanged
in interfaceIVSColumnListener
- Parameters:
column
- The VS table column.state
- The state change.on
- New state.
onParentStateChanged
public void onParentStateChanged(IVSComponent parent, IVSComponentState.State state, boolean on)
Called when the column changes state.- Specified by:
onParentStateChanged
in interfaceIVSComponentListener
- Parameters:
parent
- The parent who's state was changed.state
- The state change, possible values PARENT_ENABLED, PARENT_READONLY, PARENT_VISIBLE.on
- New state.
onSingleSelectionChanged
public void onSingleSelectionChanged(VSColumnHeader column, int rowIndex)
Called when the row selection in table single-selection mode is changed to forward to column listeners.- Specified by:
onSingleSelectionChanged
in interfaceIVSColumnListener
- Parameters:
column
- The column.rowIndex
- The row index selected, -1 for none.
onSelectionChanged
public void onSelectionChanged(VSColumnHeader column, VSRow row, int rowIndex, boolean isSelected)
Called when the row selection is changed to forward to column listeners.- Specified by:
onSelectionChanged
in interfaceIVSColumnListener
- Parameters:
column
- The column.row
- The row that was changed.rowIndex
- The row index.isSelected
- The selected state.
onRowAdded
public void onRowAdded(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been added to the table.- Specified by:
onRowAdded
in interfaceIVSColumnListener
- Parameters:
column
- The column.row
- The row that was added.rowIndex
- The row index where it was inserted.
onRowRemoved
public void onRowRemoved(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been removed from the table.- Specified by:
onRowRemoved
in interfaceIVSColumnListener
- Parameters:
column
- The column.row
- The row that was removed.rowIndex
- The row index before removal.
onStateChanged
public void onStateChanged(VSColumnHeader column, VSField cell, IVSComponentState.State state, boolean on)
Called when a cell in the column changes state.- Specified by:
onStateChanged
in interfaceIVSColumnListener
- Parameters:
column
- The VS column.cell
- The VS field.state
- The state change.on
- New state.
onCellValueChanged
public void onCellValueChanged(VSColumnHeader column, VSField cell, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)
Called when the cell value is set in the column.- Specified by:
onCellValueChanged
in interfaceIVSColumnListener
- Parameters:
column
- The VS column.cell
- The VS field.value
- The value, never null, butvalue.isNull()
could be true.trigger
- The trigger property that may be null.postProcessing
- Post-processing instance.