SolarMetric Kodo JDO 3.3.5 generated on August 31 2005

kodo.jdbc.meta
Class ValueFieldMapping

java.lang.Object
  |
  +--kodo.meta.DelegatingExtensions
        |
        +--kodo.meta.DelegatingFieldMetaData
              |
              +--kodo.jdbc.meta.AbstractFieldMapping
                    |
                    +--kodo.jdbc.meta.ReferenceFieldMapping
                          |
                          +--kodo.jdbc.meta.ColumnFieldMapping
                                |
                                +--kodo.jdbc.meta.ValueFieldMapping
All Implemented Interfaces:
Commentable, Comparable, Extensions, FieldMapping, FieldMetaData, JDBCTypes, JDOTypes, JoinableMapping, Mapping, VersionableFieldMapping

public class ValueFieldMapping
extends ColumnFieldMapping
implements JoinableMapping, VersionableFieldMapping

Maps a single-column value.


Field Summary
static String TYPE
           
 
Fields inherited from class kodo.jdbc.meta.ColumnFieldMapping
DO_NOT_SET
 
Fields inherited from interface kodo.jdbc.meta.JDBCTypes
TYPE_ASCII_STREAM, TYPE_BINARY_STREAM, TYPE_BLOB, TYPE_BYTES, TYPE_CHAR_STREAM, TYPE_CLOB, TYPE_JDBC_DEFAULT, TYPE_REF, TYPE_SQL_ARRAY, TYPE_SQL_DATE, TYPE_SQL_OBJECT, TYPE_TIME, TYPE_TIMESTAMP
 
Fields inherited from interface kodo.meta.JDOTypes
TYPE_ARRAY, TYPE_BIGDECIMAL, TYPE_BIGINTEGER, TYPE_BOOLEAN, TYPE_BOOLEAN_OBJ, TYPE_BYTE, TYPE_BYTE_OBJ, TYPE_CHAR, TYPE_CHAR_OBJ, TYPE_COLLECTION, TYPE_DATE, TYPE_DOUBLE, TYPE_DOUBLE_OBJ, TYPE_FCO, TYPE_FLOAT, TYPE_FLOAT_OBJ, TYPE_INT, TYPE_INT_OBJ, TYPE_LOCALE, TYPE_LONG, TYPE_LONG_OBJ, TYPE_MAP, TYPE_NUMBER, TYPE_OBJECT, TYPE_PC_OBJECT, TYPE_SHORT, TYPE_SHORT_OBJ, TYPE_STRING
 
Fields inherited from interface kodo.jdbc.meta.FieldMapping
AUTO_INCREMENT, DELETE_ACTION, ELEMENT_DELETE_ACTION, ELEMENT_INDEXED, ELEMENT_SIZE, EXTENSION_KEYS, FIELD_MAP, INDEXED, JDBC_TYPE, KEY_DELETE_ACTION, KEY_INDEXED, KEY_SIZE, REF_DELETE_ACTION, REF_INDEXED, SIZE, SQL_TYPE, VALUE_DELETE_ACTION, VALUE_INDEXED, VALUE_SIZE
 
Fields inherited from interface kodo.meta.FieldMetaData
DEPENDENT, EAGER_FETCH_MODE, ELEMENT_DEPENDENT, ELEMENT_TYPE, EXTERNAL_VALUES, EXTERNALIZER, FACTORY, FETCH_GROUP, INVERSE_LOGICAL, INVERSE_OWNER, KEY_DEPENDENT, KEY_TYPE, LOCK_GROUP, LOCK_GROUP_DEFAULT, LOCK_GROUP_NONE, LRS, MANAGE_NONE, MANAGE_PERSISTENT, MANAGE_TRANSACTIONAL, NULL_DEFAULT, NULL_EXCEPTION, NULL_NONE, NULL_UNSET, SEQUENCE_ASSIGNED, VALUE_DEPENDENT, VALUE_TYPE
 
Constructor Summary
ValueFieldMapping(FieldMetaData meta)
          Constructor.
 
Method Summary
 void fromMappingInfo(MappingInfo info, boolean adapt)
          The default implementation will raise warnings for any mapping attributes that are declared but not in the list of the valid attributes for this mapping.
 FieldMapping getFieldMapping()
          Return the field mapping that owns this mapping's columns.
 int getJoinTypeCode(Column col)
          Return the type code from JDBCTypes of the JDBC value returned from calls to getJoinValue(kodo.jdbc.sql.Result, kodo.jdbc.schema.Column[], kodo.jdbc.schema.ForeignKey, kodo.jdbc.sql.Joins) for the given column.
 Object getJoinValue(Object fieldVal, Column col)
          Return the join value of the given column.
 Object getJoinValue(Result res, Column[] cols, ForeignKey fk, Joins joins)
          Return the value for this mapping from the given result, using the given columns.
 String getMappingType()
          Return the abbreviated name of this mapping, or the full class name if it is a custom mapping.
 void load(KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, Result res)
          Load virtual row data; the given result is not guaranteed to contain data for this field, so the field mapping should make sure the result contains its needed column data before loading.
 Object loadProjection(JDBCStoreManager store, JDBCFetchConfiguration fetch, Result res, Joins joins)
          Load this field value using the given result.
 boolean map()
          Map a new instance of this mapping type.
 void reverseMap(SchemaGroup schema, ReverseMappingTool tool)
          Create mappings from the schema, using the given tool.
 void setAutoIncrementValue(KodoStateManager sm, Column col, long autoInc)
          Use the given auto-incremented value to set this join value's field on the given instance.
protected  void update(KodoStateManager sm, Row row)
          Update this column with the current value into the given row.
 Boolean usesImplData()
          Returns true if using state image version indicator.
 void where(KodoStateManager sm, RowManager rm, Object prevValue)
          Add a WHERE condition to the row for this field such that the field's current DB value must equal the given previous value.
 
Methods inherited from class kodo.jdbc.meta.ColumnFieldMapping
addMappingInfoAttributes, appendIsNotNull, appendIsNull, checkNull, deleteEmbedded, getColumn, getColumns, getDataStoreTypeCode, getJDBCType, insert, join, load, nullEmbedded, refSchemaComponents, select, setColumn, toMappingInfo, update
 
Methods inherited from class kodo.jdbc.meta.ReferenceFieldMapping
createRefForeignKey, delete, fromMappingInfo, getJoinedRow, getRefForeignKey, getRefJoins, getRefJoinType, getTable, join, setRefForeignKey, setRefForeignKey, setRefJoinType, wherePrimaryKey, whereRefForeignKey
 
Methods inherited from class kodo.jdbc.meta.AbstractFieldMapping
addExtensionKeys, appendIsEmpty, assertTable, delete, deleteEmbedded, getDataStoreValue, getDBDictionary, getDeclaredElementTypeMapping, getDeclaredElementTypeMetaData, getDeclaredKeyTypeMapping, getDeclaredKeyTypeMetaData, getDeclaredTypeMapping, getDeclaredTypeMetaData, getDeleteAction, getElementDeleteAction, getElementIndexed, getElementSize, getElementTypeMapping, getElementTypeMetaData, getFieldMappingName, getIndexed, getInverseMappings, getInverseMetaDatas, getInverseOwnerMapping, getInverseOwnerMetaData, getJDBCTypeCode, getKeyColumns, getKeyDataStoreValue, getKeyDeleteAction, getKeyIndexed, getKeySize, getKeyTypeMapping, getKeyTypeMetaData, getMappingRepository, getMetaData, getNonVirtualOwner, getOwner, getOwnerMapping, getOwnerTable, getRefDeleteAction, getRefIndexed, getSize, getSQLType, getTypeMapping, getTypeMetaData, insert, invalidateResolve, isAutoIncrement, isCustomDelete, isCustomDeleteEmbedded, isCustomInsert, isCustomNullEmbedded, isCustomUpdate, isDeleteActionDeferred, isEagerJoinToMany, isElementDeleteActionDeferred, isKeyDeleteActionDeferred, isPCObjectRelation, isRefDeleteActionDeferred, isResolved, joinKey, joinKeyRelation, joinRelation, loadEagerJoin, loadEagerParallel, loadKeyProjection, nullEmbedded, resolve, selectEagerJoin, selectEagerParallel, setAutoIncrement, setDeleteAction, setElementDeleteAction, setElementIndexed, setElementSize, setFieldMappingName, setIndexed, setJDBCTypeCode, setKeyDeleteAction, setKeyIndexed, setKeySize, setNonVirtualOwner, setOwner, setRefDeleteAction, setRefIndexed, setSize, setSQLType, supportsSelect, update, usesIntermediate
 
Methods inherited from class kodo.meta.DelegatingFieldMetaData
compareTo, equals, getComments, getComparator, getDeclaredElementType, getDeclaredElementTypeCode, getDeclaredIndex, getDeclaredKeyType, getDeclaredKeyTypeCode, getDeclaredPrimaryKeyIndex, getDeclaredType, getDeclaredTypeCode, getDelegate, getEagerFetchMode, getElementType, getElementTypeCode, getElementTypeName, getExternalizer, getExternalValue, getExternalValues, getFactory, getFetchGroup, getFieldFlag, getFieldValue, getFullName, getIndex, getInnermostDelegate, getInverseLogical, getInverseOwner, getKeyType, getKeyTypeCode, getKeyTypeName, getListingIndex, getLockGroup, getManagement, getName, getNullValue, getPrimaryKeyIndex, getProxyType, getType, getTypeCode, getTypeName, hashCode, isDefaultFetchGroupExplicit, isDependent, isElementDependent, isElementEmbedded, isEmbedded, isExplicit, isExternalized, isInDefaultFetchGroup, isKeyDependent, isKeyEmbedded, isLRS, isPrimaryKey, isSequenceAssigned, isTransient, setComparator, setDeclaredElementType, setDeclaredElementTypeCode, setDeclaredIndex, setDeclaredKeyType, setDeclaredKeyTypeCode, setDeclaredPrimaryKeyIndex, setDeclaredType, setDeclaredTypeCode, setDependent, setEagerFetchMode, setElementDependent, setElementEmbedded, setElementTypeName, setEmbedded, setExplicit, setExternalizer, setExternalValues, setFactory, setFetchGroup, setInDefaultFetchGroup, setIndex, setInverseLogical, setInverseOwner, setKeyDependent, setKeyEmbedded, setKeyTypeName, setListingIndex, setLockGroup, setLRS, setManagement, setName, setNullValue, setPrimaryKey, setProxyType, setSequenceAssigned, setTransient, setTypeName, toString
 
Methods inherited from class kodo.meta.DelegatingExtensions
addExtension, addExtension, getBooleanExtension, getBooleanExtension, getDoubleExtension, getDoubleExtension, getEmbeddedExtensions, getEmbeddedExtensions, getExtensionComments, getExtensionKeys, getExtensionKeys, getExtensionVendors, getIntExtension, getIntExtension, getObjectExtension, getObjectExtension, getStringExtension, getStringExtension, hasExtension, hasExtension, isEmpty, removeEmbeddedExtensions, removeEmbeddedExtensions, removeExtension, removeExtension
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface kodo.jdbc.meta.JoinableMapping
getColumns
 
Methods inherited from interface kodo.meta.FieldMetaData
getComparator, getDeclaredElementType, getDeclaredElementTypeCode, getDeclaredIndex, getDeclaredKeyType, getDeclaredKeyTypeCode, getDeclaredPrimaryKeyIndex, getDeclaredType, getDeclaredTypeCode, getEagerFetchMode, getElementType, getElementTypeCode, getElementTypeName, getExternalizer, getExternalValue, getExternalValues, getFactory, getFetchGroup, getFieldFlag, getFieldValue, getFullName, getIndex, getInverseLogical, getInverseOwner, getKeyType, getKeyTypeCode, getKeyTypeName, getListingIndex, getLockGroup, getManagement, getName, getNullValue, getPrimaryKeyIndex, getProxyType, getType, getTypeCode, getTypeName, isDefaultFetchGroupExplicit, isDependent, isElementDependent, isElementEmbedded, isEmbedded, isExplicit, isExternalized, isInDefaultFetchGroup, isKeyDependent, isKeyEmbedded, isLRS, isPrimaryKey, isSequenceAssigned, isTransient, setComparator, setDeclaredElementType, setDeclaredElementTypeCode, setDeclaredIndex, setDeclaredKeyType, setDeclaredKeyTypeCode, setDeclaredPrimaryKeyIndex, setDeclaredType, setDeclaredTypeCode, setDependent, setEagerFetchMode, setElementDependent, setElementEmbedded, setElementTypeName, setEmbedded, setExplicit, setExternalizer, setExternalValues, setFactory, setFetchGroup, setInDefaultFetchGroup, setIndex, setInverseLogical, setInverseOwner, setKeyDependent, setKeyEmbedded, setKeyTypeName, setListingIndex, setLockGroup, setLRS, setManagement, setName, setNullValue, setPrimaryKey, setProxyType, setSequenceAssigned, setTransient, setTypeName
 
Methods inherited from interface kodo.meta.Extensions
addExtension, addExtension, getBooleanExtension, getBooleanExtension, getDoubleExtension, getDoubleExtension, getEmbeddedExtensions, getEmbeddedExtensions, getExtensionComments, getExtensionKeys, getExtensionKeys, getExtensionVendors, getIntExtension, getIntExtension, getObjectExtension, getObjectExtension, getStringExtension, getStringExtension, hasExtension, hasExtension, isEmpty, removeEmbeddedExtensions, removeEmbeddedExtensions, removeExtension, removeExtension
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface kodo.meta.Commentable
getComments
 

Field Detail

TYPE

public static final String TYPE
Constructor Detail

ValueFieldMapping

public ValueFieldMapping(FieldMetaData meta)
Constructor. Supply underlying metadata.
Method Detail

getMappingType

public String getMappingType()
Description copied from interface: Mapping
Return the abbreviated name of this mapping, or the full class name if it is a custom mapping.

usesImplData

public Boolean usesImplData()
Returns true if using state image version indicator.
Overrides:
usesImplData in class AbstractFieldMapping
Following copied from interface: kodo.meta.FieldMetaData
Returns:
Boolean.FALSE if this field does not use impl data, Boolean.TRUE if this field uses non-cachable impl data, or null if this field uses impl data that should be cached across instances
See Also:
KodoStateManager.setImplData(int,Object)

fromMappingInfo

public void fromMappingInfo(MappingInfo info,
                            boolean adapt)
Description copied from class: AbstractFieldMapping
The default implementation will raise warnings for any mapping attributes that are declared but not in the list of the valid attributes for this mapping.
Overrides:
fromMappingInfo in class ColumnFieldMapping
Following copied from class: kodo.jdbc.meta.AbstractFieldMapping
See Also:
AbstractFieldMapping.addMappingInfoAttributes(java.util.Collection)

map

public boolean map()
Description copied from interface: Mapping
Map a new instance of this mapping type. If the underlying metadata cannot be mapped using this type, return false.
Overrides:
map in class ColumnFieldMapping

reverseMap

public void reverseMap(SchemaGroup schema,
                       ReverseMappingTool tool)
Description copied from interface: Mapping
Create mappings from the schema, using the given tool. Implement this method if you want the class mapping to be a candidate when reverse-mapping a schema to java classes. Note that this method will be invoked on a template instance, so you cannot rely on the metadata or owning repository being set.
Overrides:
reverseMap in class AbstractFieldMapping

load

public void load(KodoStateManager sm,
                 JDBCStoreManager store,
                 JDBCFetchConfiguration fetch,
                 Result res)
          throws SQLException
Description copied from interface: FieldMapping
Load virtual row data; the given result is not guaranteed to contain data for this field, so the field mapping should make sure the result contains its needed column data before loading.

loadProjection

public Object loadProjection(JDBCStoreManager store,
                             JDBCFetchConfiguration fetch,
                             Result res,
                             Joins joins)
                      throws SQLException
Description copied from interface: FieldMapping
Load this field value using the given result. This method will only be called if this field does not represent a FCO relation. The result will contain the columns from FieldMapping.getColumns().

update

protected void update(KodoStateManager sm,
                      Row row)
               throws SQLException
Description copied from class: ColumnFieldMapping
Update this column with the current value into the given row.
Overrides:
update in class ColumnFieldMapping

where

public void where(KodoStateManager sm,
                  RowManager rm,
                  Object prevValue)
           throws SQLException
Description copied from interface: VersionableFieldMapping
Add a WHERE condition to the row for this field such that the field's current DB value must equal the given previous value.
Specified by:
where in interface VersionableFieldMapping

getFieldMapping

public FieldMapping getFieldMapping()
Description copied from interface: JoinableMapping
Return the field mapping that owns this mapping's columns. If this is a delegate mapping, return the field mapping of the delegate.
Specified by:
getFieldMapping in interface JoinableMapping

getJoinValue

public Object getJoinValue(Result res,
                           Column[] cols,
                           ForeignKey fk,
                           Joins joins)
                    throws SQLException
Description copied from interface: JoinableMapping
Return the value for this mapping from the given result, using the given columns. Outside code will always call this method with the cols array from JoinableMapping.getColumns(), but delegates may change the columns to use. If the given foreign key is non-null, use the foreign key's columns by translating the given columns through ForeignKey.getColumn(kodo.jdbc.schema.Column).
Specified by:
getJoinValue in interface JoinableMapping

getJoinValue

public Object getJoinValue(Object fieldVal,
                           Column col)
Description copied from interface: JoinableMapping
Return the join value of the given column.
Specified by:
getJoinValue in interface JoinableMapping
Following copied from interface: kodo.jdbc.meta.JoinableMapping
Parameters:
val - the value of the field for this mapping
col - the column of this mapping whose value to return

getJoinTypeCode

public int getJoinTypeCode(Column col)
Description copied from interface: JoinableMapping
Return the type code from JDBCTypes of the JDBC value returned from calls to JoinableMapping.getJoinValue(kodo.jdbc.sql.Result, kodo.jdbc.schema.Column[], kodo.jdbc.schema.ForeignKey, kodo.jdbc.sql.Joins) for the given column.
Specified by:
getJoinTypeCode in interface JoinableMapping

setAutoIncrementValue

public void setAutoIncrementValue(KodoStateManager sm,
                                  Column col,
                                  long autoInc)
Description copied from interface: JoinableMapping
Use the given auto-incremented value to set this join value's field on the given instance.
Specified by:
setAutoIncrementValue in interface JoinableMapping

SolarMetric Kodo JDO 3.3.5 generated on August 31 2005

Copyright 2001,2002 SolarMetric, Inc. All Rights Reserved.