SolarMetric Kodo JDO 3.3.5 generated on August 31 2005

kodo.jdbc.meta
Class AbstractFieldMapping

java.lang.Object
  |
  +--kodo.meta.DelegatingExtensions
        |
        +--kodo.meta.DelegatingFieldMetaData
              |
              +--kodo.jdbc.meta.AbstractFieldMapping
All Implemented Interfaces:
Commentable, Comparable, Extensions, FieldMapping, FieldMetaData, JDBCTypes, JDOTypes, Mapping
Direct Known Subclasses:
NoneFieldMapping, ReferenceFieldMapping, VirtualFieldMapping

public abstract class AbstractFieldMapping
extends DelegatingFieldMetaData
implements Mapping, JDBCTypes, FieldMapping

Maps a persistent field to the relational schema.


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, TYPE, VALUE_DEPENDENT, VALUE_TYPE
 
Constructor Summary
AbstractFieldMapping(FieldMetaData meta)
          Constructor.
 
Method Summary
 void addExtensionKeys(Collection exts)
          Add all the known extension keys to the specified collection; any implementation that utilized new extensions should override this method to include both the known extensions of its superclass as well as its own extension keys.
 void addMappingInfoAttributes(Collection attrs)
          Add all mapping attributes names used by this mapping to the given collection.
 void appendIsEmpty(SQLBuffer sql, Select sel, Joins joins)
          Append a where clause to the given statement checking if this value is empty.
protected  Table assertTable(Table table)
           
 void delete(KodoStateManager sm, JDBCStoreManager store)
          Override this method to customize flushing this mapping.
 void deleteEmbedded(KodoStateManager sm, JDBCStoreManager store)
          Override this method to customize deleting the given mapping (used with embedded values only).
 void deleteEmbedded(KodoStateManager sm, RowManager rm)
          Delete values for the mapping.
 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.
 Object getDataStoreValue(Object val)
          Translate the given external field value to its datastore equivalent.
protected  DBDictionary getDBDictionary()
           
 ClassMapping getDeclaredElementTypeMapping()
           
 ClassMetaData getDeclaredElementTypeMetaData()
          Return metadata for the field's type, if the type is persistent.
 ClassMapping getDeclaredKeyTypeMapping()
           
 ClassMetaData getDeclaredKeyTypeMetaData()
          Return metadata for the field's type, if the type is persistent.
 ClassMapping getDeclaredTypeMapping()
           
 ClassMetaData getDeclaredTypeMetaData()
          Return metadata for the field's type, if the type is persistent.
 int getDeleteAction()
          The value of the delete action extension.
 int getElementDeleteAction()
          The value of the element delete action extension.
 int getElementIndexed()
          The value of the element indexed extension.
 int getElementSize()
          The value of the element size extension.
 ClassMapping getElementTypeMapping()
          Convenience method to make casting from getElementTypeMetaData() unnecessary.
 ClassMetaData getElementTypeMetaData()
          Return metadata for the element type, or null if not persistent.
 String getFieldMappingName()
          The value of the field mapping name extension.
 int getIndexed()
          The value of the indexed extension.
 FieldMapping[] getInverseMappings()
           
 FieldMetaData[] getInverseMetaDatas()
          Return all fields to which this field owns or is owned in the inverse, or has simulated inverse behavior.
 FieldMapping getInverseOwnerMapping()
           
 FieldMetaData getInverseOwnerMetaData()
          Return the metadata for the field's inverse.
 int getJDBCTypeCode()
          The value of the jdbc-type extension
 Column[] getKeyColumns()
          Return the key columns for this mapping, or empty array if none.
 Object getKeyDataStoreValue(Object val)
          Translate the given key value to its datastore equivalent.
 int getKeyDeleteAction()
          The value of the key delete action extension.
 int getKeyIndexed()
          The value of the key indexed extension.
 int getKeySize()
          The value of the key size extension.
 ClassMapping getKeyTypeMapping()
          Convenience method to make casting from getKeyTypeMetaData() unnecessary.
 ClassMetaData getKeyTypeMetaData()
          Return metadata for the key type, or null if not persistent.
 MappingRepository getMappingRepository()
          Return the mapping's repository.
 FieldMetaData getMetaData()
          Return the underlying FieldMetaData for this mapping.
 ClassMapping getNonVirtualOwner()
          The non-virtual owner for the field.
 ClassMetaData getOwner()
          Return the owning metadata for this field.
 ClassMapping getOwnerMapping()
          Convenience method to make casting getOwner() unnecessary.
protected  Table getOwnerTable()
           
 int getRefDeleteAction()
          The value of the ref delete action extension.
 int getRefIndexed()
          The value of the ref indexed extension.
 int getSize()
          The value of the size extension.
 String getSQLType()
          The sql type name extension.
 ClassMapping getTypeMapping()
          Convenience method to make casting from getTypeMetaData() unnecessary.
 ClassMetaData getTypeMetaData()
          Return metadata for the field's type, if the type is persistent.
 void insert(KodoStateManager sm, JDBCStoreManager store)
          Override this method to customize flushing this mapping.
 void invalidateResolve()
          For implementation use.
 boolean isAutoIncrement()
          The value of the auto increment extension.
 Boolean isCustomDelete(KodoStateManager sm)
          Return Boolean.FALSE if this mapping does not customize the delete process, Boolean.TRUE if it does, or null if it does customize the delete, but also relies on the standard delete method being called.
 Boolean isCustomDeleteEmbedded(KodoStateManager sm)
          Return Boolean.FALSE if this mapping does not customize the delete process, Boolean.TRUE if it does, or null if it does customize the delete, but also relies on the standard delete method being called.
 Boolean isCustomInsert(KodoStateManager sm)
          Return Boolean.FALSE if this mapping does not customize the insert process, Boolean.TRUE if it does, or null if it does customize the insert, but also relies on the standard insert method being called.
 Boolean isCustomNullEmbedded(KodoStateManager sm)
          Return Boolean.FALSE if this mapping does not customize the nulling process, Boolean.TRUE if it does, or null if it does customize the nulling, but also relies on the standard nulling method being called.
 Boolean isCustomUpdate(KodoStateManager sm)
          Return Boolean.FALSE if this mapping does not customize the update process, Boolean.TRUE if it does, or null if it does customize the update, but also relies on the standard update method being called.
 boolean isDeleteActionDeferred()
          The value of the delete action extension.
 boolean isEagerJoinToMany()
          Whether the eager joins used by this field are to-many.
 boolean isElementDeleteActionDeferred()
          The value of the element delete action extension.
 boolean isKeyDeleteActionDeferred()
          The value of the key delete action extension.
protected  boolean isPCObjectRelation(ClassMapping relMap, int relCode)
           
 boolean isRefDeleteActionDeferred()
          The value of the ref delete action extension.
 boolean isResolved()
          Return whether this field has been resolved.
 Joins join(Joins joins)
          Join this value to the class table.
 Joins joinKey(Joins joins)
          Join the key value to the class table.
 Joins joinKeyRelation(Joins joins)
          Join this value's table to the table for the related first class object key type, if any.
 Joins joinRelation(Joins joins)
          Join this value's table to the table for the related first class object type, if any.
 void loadEagerJoin(KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, Result res)
          Load the joined eager result.
 void loadEagerParallel(KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, Result res, Result orig)
          Load the batched eager result.
 Object loadKeyProjection(JDBCStoreManager store, JDBCFetchConfiguration fetch, Result res, Joins joins)
          Load this field's key value using the given result.
 void nullEmbedded(KodoStateManager sm, JDBCStoreManager store)
          Override this method to customize nulling the given mapping (used with embedded values only).
 void nullEmbedded(KodoStateManager sm, RowManager rm)
          Null values for the mapping.
 void resolve()
          For implementation use.
 void reverseMap(SchemaGroup schema, ReverseMappingTool tool)
          Create mappings from the schema, using the given tool.
 int selectEagerJoin(Select sel, KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, int eagerMode)
          Use eager joins to select related objects.
 int selectEagerParallel(Select sel, Select orig, KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, int eagerMode)
          Create a parallel eager select for related objects.
 void setAutoIncrement(boolean autoInc)
          The value of the auto increment extension.
 void setDeleteAction(int action, boolean deferred)
          The value of the delete action extension.
 void setElementDeleteAction(int action, boolean deferred)
          The value of the element delete action extension.
 void setElementIndexed(int idx)
          The value of the element indexed extension.
 void setElementSize(int size)
          The value of the element size extension.
 void setFieldMappingName(String map)
          The value of the field mapping name extension.
 void setIndexed(int idx)
          The value of the indexed extension.
 void setJDBCTypeCode(int type)
          The value of the jdbc-type extension.
 void setKeyDeleteAction(int action, boolean deferred)
          The value of the key delete action extension.
 void setKeyIndexed(int idx)
          The value of the key indexed extension.
 void setKeySize(int size)
          The value of the key size extension.
 void setNonVirtualOwner(ClassMapping nonVirtualOwner)
          The non-virtual owner for the field.
 void setOwner(ClassMetaData owner)
          Set the owning metadata for this field.
 void setRefDeleteAction(int action, boolean deferred)
          The value of the ref delete action extension.
 void setRefIndexed(int idx)
          The value of the ref indexed extension.
 void setSize(int size)
          The value of the size extension.
 void setSQLType(String type)
          The sql type name extension.
 boolean supportsSelect(Select sel, int type, KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch)
          Return true if this mapping can perform the given select type.
 void update(KodoStateManager sm, JDBCStoreManager store)
          Override this method to customize flushing this mapping.
 Boolean usesImplData()
          Returns false.
 boolean usesIntermediate()
          Returns false.
 
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.Mapping
delete, getMappingType, getTable, insert, map, refSchemaComponents, toMappingInfo, update
 
Methods inherited from interface kodo.jdbc.meta.FieldMapping
appendIsNotNull, appendIsNull, getColumns, load, load, loadProjection, select
 
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
 

Constructor Detail

AbstractFieldMapping

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

getMappingRepository

public MappingRepository getMappingRepository()
Description copied from interface: Mapping
Return the mapping's repository.
Specified by:
getMappingRepository in interface Mapping

usesIntermediate

public boolean usesIntermediate()
Returns false.
Specified by:
usesIntermediate in interface FieldMetaData
Overrides:
usesIntermediate in class DelegatingFieldMetaData
Following copied from interface: kodo.meta.FieldMetaData
See Also:
KodoStateManager.setIntermediate(int,Object)

usesImplData

public Boolean usesImplData()
Returns false.
Specified by:
usesImplData in interface FieldMetaData
Overrides:
usesImplData in class DelegatingFieldMetaData
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)

getKeyColumns

public Column[] getKeyColumns()
Description copied from interface: FieldMapping
Return the key columns for this mapping, or empty array if none. Returns an empty array by default.
Specified by:
getKeyColumns in interface FieldMapping

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.
Specified by:
reverseMap in interface Mapping

fromMappingInfo

public 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.
Specified by:
fromMappingInfo in interface Mapping
See Also:
addMappingInfoAttributes(java.util.Collection)

addExtensionKeys

public void addExtensionKeys(Collection exts)
Description copied from interface: Extensions
Add all the known extension keys to the specified collection; any implementation that utilized new extensions should override this method to include both the known extensions of its superclass as well as its own extension keys.
Specified by:
addExtensionKeys in interface Extensions
Overrides:
addExtensionKeys in class DelegatingExtensions

addMappingInfoAttributes

public void addMappingInfoAttributes(Collection attrs)
Description copied from interface: Mapping
Add all mapping attributes names used by this mapping to the given collection. For foreign key attributes, add the prefix.
Specified by:
addMappingInfoAttributes in interface Mapping

supportsSelect

public boolean supportsSelect(Select sel,
                              int type,
                              KodoStateManager sm,
                              JDBCStoreManager store,
                              JDBCFetchConfiguration fetch)
Description copied from interface: FieldMapping
Return true if this mapping can perform the given select type. By default, returns true only if the type is Select#JOINLESS and the given select instance already has this field's table selected. The given state manager may be null if selecting multiple instances.
Specified by:
supportsSelect in interface FieldMapping

selectEagerParallel

public int selectEagerParallel(Select sel,
                               Select orig,
                               KodoStateManager sm,
                               JDBCStoreManager store,
                               JDBCFetchConfiguration fetch,
                               int eagerMode)
Description copied from interface: FieldMapping
Create a parallel eager select for related objects.
Specified by:
selectEagerParallel in interface FieldMapping
Following copied from interface: kodo.jdbc.meta.FieldMapping
See Also:
FieldMapping.select(kodo.jdbc.sql.Select, kodo.runtime.KodoStateManager, kodo.jdbc.runtime.JDBCStoreManager, kodo.jdbc.runtime.JDBCFetchConfiguration, int)

selectEagerJoin

public int selectEagerJoin(Select sel,
                           KodoStateManager sm,
                           JDBCStoreManager store,
                           JDBCFetchConfiguration fetch,
                           int eagerMode)
Description copied from interface: FieldMapping
Use eager joins to select related objects.
Specified by:
selectEagerJoin in interface FieldMapping
Following copied from interface: kodo.jdbc.meta.FieldMapping
See Also:
FieldMapping.select(kodo.jdbc.sql.Select, kodo.runtime.KodoStateManager, kodo.jdbc.runtime.JDBCStoreManager, kodo.jdbc.runtime.JDBCFetchConfiguration, int)

isEagerJoinToMany

public boolean isEagerJoinToMany()
Description copied from interface: FieldMapping
Whether the eager joins used by this field are to-many.
Specified by:
isEagerJoinToMany in interface FieldMapping

loadEagerParallel

public void loadEagerParallel(KodoStateManager sm,
                              JDBCStoreManager store,
                              JDBCFetchConfiguration fetch,
                              Result res,
                              Result orig)
                       throws SQLException
Description copied from interface: FieldMapping
Load the batched eager result.
Specified by:
loadEagerParallel in interface FieldMapping

loadEagerJoin

public void loadEagerJoin(KodoStateManager sm,
                          JDBCStoreManager store,
                          JDBCFetchConfiguration fetch,
                          Result res)
                   throws SQLException
Description copied from interface: FieldMapping
Load the joined eager result.
Specified by:
loadEagerJoin in interface FieldMapping

nullEmbedded

public void nullEmbedded(KodoStateManager sm,
                         RowManager rm)
                  throws SQLException
Description copied from interface: FieldMapping
Null values for the mapping. This method is used when embedded values are nulled or replaced. The given state manager will be the owner of the object whose fields are now being nulled.
Specified by:
nullEmbedded in interface FieldMapping
Following copied from interface: kodo.jdbc.meta.FieldMapping
See Also:
Mapping.insert(kodo.runtime.KodoStateManager, kodo.jdbc.sql.RowManager)

deleteEmbedded

public void deleteEmbedded(KodoStateManager sm,
                           RowManager rm)
                    throws SQLException
Description copied from interface: FieldMapping
Delete values for the mapping. This method is used when embedded values are deleted. The given state manager will be the owner of the object that is being deleted.
Specified by:
deleteEmbedded in interface FieldMapping
Following copied from interface: kodo.jdbc.meta.FieldMapping
See Also:
Mapping.insert(kodo.runtime.KodoStateManager, kodo.jdbc.sql.RowManager)

isCustomInsert

public Boolean isCustomInsert(KodoStateManager sm)
Description copied from interface: Mapping
Return Boolean.FALSE if this mapping does not customize the insert process, Boolean.TRUE if it does, or null if it does customize the insert, but also relies on the standard insert method being called. Implement the Mapping.insert(KodoStateManager,JDBCStoreManager) method to implement the custom insertion behavior.
Specified by:
isCustomInsert in interface Mapping

isCustomUpdate

public Boolean isCustomUpdate(KodoStateManager sm)
Description copied from interface: Mapping
Return Boolean.FALSE if this mapping does not customize the update process, Boolean.TRUE if it does, or null if it does customize the update, but also relies on the standard update method being called. Implement the Mapping.update(KodoStateManager,JDBCStoreManager) method to override the default update behavior.
Specified by:
isCustomUpdate in interface Mapping

isCustomDelete

public Boolean isCustomDelete(KodoStateManager sm)
Description copied from interface: Mapping
Return Boolean.FALSE if this mapping does not customize the delete process, Boolean.TRUE if it does, or null if it does customize the delete, but also relies on the standard delete method being called. Implement the Mapping.delete(KodoStateManager,JDBCStoreManager) method to override the default deletion behavior.
Specified by:
isCustomDelete in interface Mapping

isCustomNullEmbedded

public Boolean isCustomNullEmbedded(KodoStateManager sm)
Description copied from interface: FieldMapping
Return Boolean.FALSE if this mapping does not customize the nulling process, Boolean.TRUE if it does, or null if it does customize the nulling, but also relies on the standard nulling method being called. Implement the #nullEmbedded(KodoStateManager,JDBCStoreManager,Connection) method to override the default update behavior.
Specified by:
isCustomNullEmbedded in interface FieldMapping

isCustomDeleteEmbedded

public Boolean isCustomDeleteEmbedded(KodoStateManager sm)
Description copied from interface: FieldMapping
Return Boolean.FALSE if this mapping does not customize the delete process, Boolean.TRUE if it does, or null if it does customize the delete, but also relies on the standard delete method being called. Implement the #deleteEmbedded(KodoStateManager,JDBCStoreManager,Connection) method to override the default update behavior.
Specified by:
isCustomDeleteEmbedded in interface FieldMapping

insert

public void insert(KodoStateManager sm,
                   JDBCStoreManager store)
            throws SQLException
Description copied from interface: Mapping
Override this method to customize flushing this mapping. For classes, this method must also flush all fields. For fields, this method is called after the owning object is inserted, so if this field is in a row with other fields, that row will already exist.
Specified by:
insert in interface Mapping

update

public void update(KodoStateManager sm,
                   JDBCStoreManager store)
            throws SQLException
Description copied from interface: Mapping
Override this method to customize flushing this mapping. For classes, this method must also flush all fields.
Specified by:
update in interface Mapping

delete

public void delete(KodoStateManager sm,
                   JDBCStoreManager store)
            throws SQLException
Description copied from interface: Mapping
Override this method to customize flushing this mapping. For classes, this method must also flush all fields. For fields, this method will be called after the owning object is deleted.
Specified by:
delete in interface Mapping

nullEmbedded

public void nullEmbedded(KodoStateManager sm,
                         JDBCStoreManager store)
                  throws SQLException
Description copied from interface: FieldMapping
Override this method to customize nulling the given mapping (used with embedded values only). The given state manager will represent the object that embeds the object being nulled.
Specified by:
nullEmbedded in interface FieldMapping

deleteEmbedded

public void deleteEmbedded(KodoStateManager sm,
                           JDBCStoreManager store)
                    throws SQLException
Description copied from interface: FieldMapping
Override this method to customize deleting the given mapping (used with embedded values only). The given state manager will represent the object that embeds the object being deleted.
Specified by:
deleteEmbedded in interface FieldMapping

getDataStoreValue

public Object getDataStoreValue(Object val)
Description copied from interface: FieldMapping
Translate the given external field value to its datastore equivalent. If the mapping occupies multiple columns in the datastore, return an object array, else return a single object. Simply returns the given object by default.
Specified by:
getDataStoreValue in interface FieldMapping

getKeyDataStoreValue

public Object getKeyDataStoreValue(Object val)
Description copied from interface: FieldMapping
Translate the given key value to its datastore equivalent. If the mapping occupies multiple columns in the datastore, return an object array, else return a single object. Simply returns the given object by default.
Specified by:
getKeyDataStoreValue in interface FieldMapping

appendIsEmpty

public void appendIsEmpty(SQLBuffer sql,
                          Select sel,
                          Joins joins)
Description copied from interface: FieldMapping
Append a where clause to the given statement checking if this value is empty. Appends impossible-to-satisfy SQL by default.
Specified by:
appendIsEmpty in interface FieldMapping

join

public Joins join(Joins joins)
Description copied from interface: FieldMapping
Join this value to the class table. Does nothing by default.
Specified by:
join in interface FieldMapping

joinKey

public Joins joinKey(Joins joins)
Description copied from interface: FieldMapping
Join the key value to the class table. Does nothing by default.
Specified by:
joinKey in interface FieldMapping

joinRelation

public Joins joinRelation(Joins joins)
Description copied from interface: FieldMapping
Join this value's table to the table for the related first class object type, if any. Does nothing by default.
Specified by:
joinRelation in interface FieldMapping

joinKeyRelation

public Joins joinKeyRelation(Joins joins)
Description copied from interface: FieldMapping
Join this value's table to the table for the related first class object key type, if any. Does nothing by default.
Specified by:
joinKeyRelation in interface FieldMapping

loadKeyProjection

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

getDBDictionary

protected DBDictionary getDBDictionary()

assertTable

protected Table assertTable(Table table)

getFieldMappingName

public String getFieldMappingName()
Description copied from interface: FieldMapping
The value of the field mapping name extension.
Specified by:
getFieldMappingName in interface FieldMapping

setFieldMappingName

public void setFieldMappingName(String map)
Description copied from interface: FieldMapping
The value of the field mapping name extension.
Specified by:
setFieldMappingName in interface FieldMapping

getJDBCTypeCode

public int getJDBCTypeCode()
Description copied from interface: FieldMapping
The value of the jdbc-type extension
Specified by:
getJDBCTypeCode in interface FieldMapping

setJDBCTypeCode

public void setJDBCTypeCode(int type)
Description copied from interface: FieldMapping
The value of the jdbc-type extension.
Specified by:
setJDBCTypeCode in interface FieldMapping

getSQLType

public String getSQLType()
Description copied from interface: FieldMapping
The sql type name extension.
Specified by:
getSQLType in interface FieldMapping

setSQLType

public void setSQLType(String type)
Description copied from interface: FieldMapping
The sql type name extension.
Specified by:
setSQLType in interface FieldMapping

getSize

public int getSize()
Description copied from interface: FieldMapping
The value of the size extension.
Specified by:
getSize in interface FieldMapping

setSize

public void setSize(int size)
Description copied from interface: FieldMapping
The value of the size extension.
Specified by:
setSize in interface FieldMapping

getElementSize

public int getElementSize()
Description copied from interface: FieldMapping
The value of the element size extension.
Specified by:
getElementSize in interface FieldMapping

setElementSize

public void setElementSize(int size)
Description copied from interface: FieldMapping
The value of the element size extension.
Specified by:
setElementSize in interface FieldMapping

getKeySize

public int getKeySize()
Description copied from interface: FieldMapping
The value of the key size extension.
Specified by:
getKeySize in interface FieldMapping

setKeySize

public void setKeySize(int size)
Description copied from interface: FieldMapping
The value of the key size extension.
Specified by:
setKeySize in interface FieldMapping

getIndexed

public int getIndexed()
Description copied from interface: FieldMapping
The value of the indexed extension.
Specified by:
getIndexed in interface FieldMapping

setIndexed

public void setIndexed(int idx)
Description copied from interface: FieldMapping
The value of the indexed extension.
Specified by:
setIndexed in interface FieldMapping

getElementIndexed

public int getElementIndexed()
Description copied from interface: FieldMapping
The value of the element indexed extension.
Specified by:
getElementIndexed in interface FieldMapping

setElementIndexed

public void setElementIndexed(int idx)
Description copied from interface: FieldMapping
The value of the element indexed extension.
Specified by:
setElementIndexed in interface FieldMapping

getKeyIndexed

public int getKeyIndexed()
Description copied from interface: FieldMapping
The value of the key indexed extension.
Specified by:
getKeyIndexed in interface FieldMapping

setKeyIndexed

public void setKeyIndexed(int idx)
Description copied from interface: FieldMapping
The value of the key indexed extension.
Specified by:
setKeyIndexed in interface FieldMapping

getRefIndexed

public int getRefIndexed()
Description copied from interface: FieldMapping
The value of the ref indexed extension.
Specified by:
getRefIndexed in interface FieldMapping

setRefIndexed

public void setRefIndexed(int idx)
Description copied from interface: FieldMapping
The value of the ref indexed extension.
Specified by:
setRefIndexed in interface FieldMapping

getDeleteAction

public int getDeleteAction()
Description copied from interface: FieldMapping
The value of the delete action extension.
Specified by:
getDeleteAction in interface FieldMapping

isDeleteActionDeferred

public boolean isDeleteActionDeferred()
Description copied from interface: FieldMapping
The value of the delete action extension.
Specified by:
isDeleteActionDeferred in interface FieldMapping

setDeleteAction

public void setDeleteAction(int action,
                            boolean deferred)
Description copied from interface: FieldMapping
The value of the delete action extension.
Specified by:
setDeleteAction in interface FieldMapping

getElementDeleteAction

public int getElementDeleteAction()
Description copied from interface: FieldMapping
The value of the element delete action extension.
Specified by:
getElementDeleteAction in interface FieldMapping

isElementDeleteActionDeferred

public boolean isElementDeleteActionDeferred()
Description copied from interface: FieldMapping
The value of the element delete action extension.
Specified by:
isElementDeleteActionDeferred in interface FieldMapping

setElementDeleteAction

public void setElementDeleteAction(int action,
                                   boolean deferred)
Description copied from interface: FieldMapping
The value of the element delete action extension.
Specified by:
setElementDeleteAction in interface FieldMapping

getKeyDeleteAction

public int getKeyDeleteAction()
Description copied from interface: FieldMapping
The value of the key delete action extension.
Specified by:
getKeyDeleteAction in interface FieldMapping

isKeyDeleteActionDeferred

public boolean isKeyDeleteActionDeferred()
Description copied from interface: FieldMapping
The value of the key delete action extension.
Specified by:
isKeyDeleteActionDeferred in interface FieldMapping

setKeyDeleteAction

public void setKeyDeleteAction(int action,
                               boolean deferred)
Description copied from interface: FieldMapping
The value of the key delete action extension.
Specified by:
setKeyDeleteAction in interface FieldMapping

getRefDeleteAction

public int getRefDeleteAction()
Description copied from interface: FieldMapping
The value of the ref delete action extension.
Specified by:
getRefDeleteAction in interface FieldMapping

isRefDeleteActionDeferred

public boolean isRefDeleteActionDeferred()
Description copied from interface: FieldMapping
The value of the ref delete action extension.
Specified by:
isRefDeleteActionDeferred in interface FieldMapping

setRefDeleteAction

public void setRefDeleteAction(int action,
                               boolean deferred)
Description copied from interface: FieldMapping
The value of the ref delete action extension.
Specified by:
setRefDeleteAction in interface FieldMapping

isAutoIncrement

public boolean isAutoIncrement()
Description copied from interface: FieldMapping
The value of the auto increment extension.
Specified by:
isAutoIncrement in interface FieldMapping

setAutoIncrement

public void setAutoIncrement(boolean autoInc)
Description copied from interface: FieldMapping
The value of the auto increment extension.
Specified by:
setAutoIncrement in interface FieldMapping

isPCObjectRelation

protected boolean isPCObjectRelation(ClassMapping relMap,
                                     int relCode)

getOwner

public ClassMetaData getOwner()
Description copied from interface: FieldMetaData
Return the owning metadata for this field.
Specified by:
getOwner in interface FieldMetaData
Overrides:
getOwner in class DelegatingFieldMetaData

getMetaData

public FieldMetaData getMetaData()
Description copied from interface: FieldMapping
Return the underlying FieldMetaData for this mapping.
Specified by:
getMetaData in interface FieldMapping

getOwnerMapping

public ClassMapping getOwnerMapping()
Description copied from interface: FieldMapping
Convenience method to make casting FieldMetaData.getOwner() unnecessary.
Specified by:
getOwnerMapping in interface FieldMapping

setOwner

public void setOwner(ClassMetaData owner)
Description copied from interface: FieldMetaData
Set the owning metadata for this field.
Specified by:
setOwner in interface FieldMetaData
Overrides:
setOwner in class DelegatingFieldMetaData

getTypeMetaData

public ClassMetaData getTypeMetaData()
Description copied from interface: FieldMetaData
Return metadata for the field's type, if the type is persistent.
Specified by:
getTypeMetaData in interface FieldMetaData
Overrides:
getTypeMetaData in class DelegatingFieldMetaData

setNonVirtualOwner

public void setNonVirtualOwner(ClassMapping nonVirtualOwner)
Description copied from interface: FieldMapping
The non-virtual owner for the field.
Specified by:
setNonVirtualOwner in interface FieldMapping

getNonVirtualOwner

public ClassMapping getNonVirtualOwner()
Description copied from interface: FieldMapping
The non-virtual owner for the field.
Specified by:
getNonVirtualOwner in interface FieldMapping

getOwnerTable

protected Table getOwnerTable()

getTypeMapping

public ClassMapping getTypeMapping()
Description copied from interface: FieldMapping
Convenience method to make casting from FieldMetaData.getTypeMetaData() unnecessary.
Specified by:
getTypeMapping in interface FieldMapping

getDeclaredTypeMetaData

public ClassMetaData getDeclaredTypeMetaData()
Description copied from interface: FieldMetaData
Return metadata for the field's type, if the type is persistent.
Specified by:
getDeclaredTypeMetaData in interface FieldMetaData
Overrides:
getDeclaredTypeMetaData in class DelegatingFieldMetaData

getDeclaredTypeMapping

public ClassMapping getDeclaredTypeMapping()

getElementTypeMetaData

public ClassMetaData getElementTypeMetaData()
Description copied from interface: FieldMetaData
Return metadata for the element type, or null if not persistent.
Specified by:
getElementTypeMetaData in interface FieldMetaData
Overrides:
getElementTypeMetaData in class DelegatingFieldMetaData

getElementTypeMapping

public ClassMapping getElementTypeMapping()
Description copied from interface: FieldMapping
Convenience method to make casting from FieldMetaData.getElementTypeMetaData() unnecessary.
Specified by:
getElementTypeMapping in interface FieldMapping

getDeclaredElementTypeMetaData

public ClassMetaData getDeclaredElementTypeMetaData()
Description copied from interface: FieldMetaData
Return metadata for the field's type, if the type is persistent.
Specified by:
getDeclaredElementTypeMetaData in interface FieldMetaData
Overrides:
getDeclaredElementTypeMetaData in class DelegatingFieldMetaData

getDeclaredElementTypeMapping

public ClassMapping getDeclaredElementTypeMapping()

getKeyTypeMetaData

public ClassMetaData getKeyTypeMetaData()
Description copied from interface: FieldMetaData
Return metadata for the key type, or null if not persistent.
Specified by:
getKeyTypeMetaData in interface FieldMetaData
Overrides:
getKeyTypeMetaData in class DelegatingFieldMetaData

getKeyTypeMapping

public ClassMapping getKeyTypeMapping()
Description copied from interface: FieldMapping
Convenience method to make casting from FieldMetaData.getKeyTypeMetaData() unnecessary.
Specified by:
getKeyTypeMapping in interface FieldMapping

getDeclaredKeyTypeMetaData

public ClassMetaData getDeclaredKeyTypeMetaData()
Description copied from interface: FieldMetaData
Return metadata for the field's type, if the type is persistent.
Specified by:
getDeclaredKeyTypeMetaData in interface FieldMetaData
Overrides:
getDeclaredKeyTypeMetaData in class DelegatingFieldMetaData

getDeclaredKeyTypeMapping

public ClassMapping getDeclaredKeyTypeMapping()

getInverseOwnerMetaData

public FieldMetaData getInverseOwnerMetaData()
Description copied from interface: FieldMetaData
Return the metadata for the field's inverse.
Specified by:
getInverseOwnerMetaData in interface FieldMetaData
Overrides:
getInverseOwnerMetaData in class DelegatingFieldMetaData

getInverseOwnerMapping

public FieldMapping getInverseOwnerMapping()

getInverseMetaDatas

public FieldMetaData[] getInverseMetaDatas()
Description copied from interface: FieldMetaData
Return all fields to which this field owns or is owned in the inverse, or has simulated inverse behavior.
Specified by:
getInverseMetaDatas in interface FieldMetaData
Overrides:
getInverseMetaDatas in class DelegatingFieldMetaData

getInverseMappings

public FieldMapping[] getInverseMappings()

isResolved

public boolean isResolved()
Description copied from interface: FieldMetaData
Return whether this field has been resolved.
Specified by:
isResolved in interface FieldMetaData
Overrides:
isResolved in class DelegatingFieldMetaData

invalidateResolve

public void invalidateResolve()
Description copied from interface: FieldMetaData
For implementation use. Invalidate the field's resolve.
Specified by:
invalidateResolve in interface FieldMetaData
Overrides:
invalidateResolve in class DelegatingFieldMetaData

resolve

public void resolve()
Description copied from interface: FieldMetaData
For implementation use. This method resolves fields that might be other first class objects, and caches frequently-accessed data. It requires access to a respository. It can use the repository to access class metadatas, but it cannot access other field metadatas.
Specified by:
resolve in interface FieldMetaData
Overrides:
resolve in class DelegatingFieldMetaData

SolarMetric Kodo JDO 3.3.5 generated on August 31 2005

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