Overview | Package | Class | Tree | Deprecated | Index | Help
| SolarMetric Kodo JDO 3.4.1 generated on May 30 2006
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## kodo.jdbc.meta
Class ColumnMapFieldMapping

    java.lang.Object
      |
      +--kodo.meta.DelegatingExtensions
            |
            +--kodo.meta.DelegatingFieldMetaData
                  |
                  +--kodo.jdbc.meta.AbstractFieldMapping
                        |
                        +--kodo.jdbc.meta.ReferenceFieldMapping
                              |
                              +--kodo.jdbc.meta.ContainerFieldMapping
                                    |
                                    +--kodo.jdbc.meta.AbstractMapFieldMapping
                                          |
                                          +--kodo.jdbc.meta.ColumnMapFieldMapping

All Implemented Interfaces:
  Commentable, Comparable, Extensions, FieldMapping, FieldMetaData, JDBCTypes, JDOTypes, Mapping

Direct Known Subclasses:
  MapFieldMapping, NToPCObjectMapFieldMapping, PCObjectMapFieldMapping, PCObjectToNMapFieldMapping

public abstract class ColumnMapFieldMapping
extends AbstractMapFieldMapping

A map where both the key and value are single-column mappings.

Inner classes inherited from class kodo.jdbc.meta.AbstractMapFieldMapping
`AbstractMapFieldMapping.LRSProxyMap`

Fields inherited from class kodo.jdbc.meta.ContainerFieldMapping
`CONTAINER_META`

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
`ColumnMapFieldMapping(FieldMetaData meta)` Constructor.

Method Summary
`void` | `addMappingInfoAttributes(Collection attrs)` Add all mapping attributes names used by this mapping to the given collection.
`void` | `delete(KodoStateManager sm, RowManager rm)` Delete the row for this object if the reference foreign key exists.
`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.
`Column[]` | `getColumns()` Return the data columns for this mapping.
`protected int` | `getDataStoreTypeCode()` Return the type of the value stored in the data store for the value column.
`protected int` | `getJDBCType()` Return the JDBC `Types` type of the column for this mapping.
`Column` | `getKeyColumn()` Return the column holding the map key.
`Column[]` | `getKeyColumns()` Return the key columns for this mapping, or empty array if none.
`protected int` | `getKeyDataStoreTypeCode()` Return the type of the value stored in the data store for the key column.
`protected int` | `getKeyJDBCType()` Return the JDBC `Types` type of the column for this mapping.
`protected Result[]` | `getResults(KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, int eagerMode, boolean lrs)` Return results containing all keys and values for this map.
`Column` | `getValueColumn()` Return the column holding the map value.
`void` | `insert(KodoStateManager sm, RowManager rm)` Set values for the mapping into the proper rows.
`boolean` | `map()` Map a new instance of this mapping type.
`void` | `nullEmbedded(KodoStateManager sm, RowManager rm)` Null values for the mapping.
`void` | `refSchemaComponents()` Increment the reference count of all used schema components.
`protected void` | `selectKeys(Select sel, KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, Joins joins)` Implement this method to select the keys of this mapping.
`protected void` | `selectValues(Select sel, KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, Joins joins)` Implement this method to select the values of this mapping.
`void` | `setKeyColumn(Column col)` Set the column holding the map key.
`void` | `setValueColumn(Column col)` Set the column holding the map value.
`void` | `toMappingInfo(MappingInfo info)` Serialize this mapping to a simple `MappingInfo` instance for transfer to XML or some other format.
`void` | `update(KodoStateManager sm, RowManager rm)` Set values for the mapping into the proper rows.

Methods inherited from class kodo.jdbc.meta.AbstractMapFieldMapping
`joinKey, load`

Methods inherited from class kodo.jdbc.meta.ContainerFieldMapping
`addExtensionKeys, appendIsEmpty, appendIsNotNull, appendIsNull, getContainerMeta, getMetaDataColumn, join, load, select, setContainerMeta, setMetaDataColumn, supportsSelect`

Methods inherited from class kodo.jdbc.meta.ReferenceFieldMapping
`createRefForeignKey, fromMappingInfo, getJoinedRow, getRefForeignKey, getRefJoins, getRefJoinType, getTable, join, setRefForeignKey, setRefForeignKey, setRefJoinType, wherePrimaryKey, whereRefForeignKey`

Methods inherited from class kodo.jdbc.meta.AbstractFieldMapping
`assertTable, delete, deleteEmbedded, getDataStoreValue, getDBDictionary, getDeclaredElementTypeMapping, getDeclaredElementTypeMetaData, getDeclaredKeyTypeMapping, getDeclaredKeyTypeMetaData, getDeclaredTypeMapping, getDeclaredTypeMetaData, getDeleteAction, getElementDeleteAction, getElementIndexed, getElementSize, getElementTypeMapping, getElementTypeMetaData, getFieldMappingName, getIndexed, getInverseMappings, getInverseMetaDatas, getInverseOwnerMapping, getInverseOwnerMetaData, getJDBCTypeCode, 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, joinKeyRelation, joinRelation, loadEagerJoin, loadEagerParallel, loadKeyProjection, nullEmbedded, resolve, reverseMap, selectEagerJoin, selectEagerParallel, setAutoIncrement, setDeleteAction, setElementDeleteAction, setElementIndexed, setElementSize, setFieldMappingName, setIndexed, setJDBCTypeCode, setKeyDeleteAction, setKeyIndexed, setKeySize, setNonVirtualOwner, setOwner, setRefDeleteAction, setRefIndexed, setSize, setSQLType, update, usesImplData, 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.Mapping
`getMappingType`

Methods inherited from interface kodo.jdbc.meta.FieldMapping
`loadProjection`

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

### ColumnMapFieldMapping

    public ColumnMapFieldMapping(FieldMetaData meta)

  Constructor. Supply underlying metadata.

Method Detail

### getKeyColumn

    public Column getKeyColumn()

  Return the column holding the map key.

### setKeyColumn

    public void setKeyColumn(Column col)

  Set the column holding the map key.

### getValueColumn

    public Column getValueColumn()

  Return the column holding the map value.

### setValueColumn

    public void setValueColumn(Column col)

  Set the column holding the map value.

### getDataStoreTypeCode

    protected int getDataStoreTypeCode()

  Return the type of the value stored in the data store for the value column. Defaults to `FieldMetaData.getElementTypeCode()`.

### getJDBCType

    protected int getJDBCType()

  Return the JDBC `Types` type of the column for this mapping. Uses the preferred type for the `getDataStoreTypeCode()` by default.

### getKeyDataStoreTypeCode

    protected int getKeyDataStoreTypeCode()

  Return the type of the value stored in the data store for the key column. Defaults to `FieldMetaData.getKeyTypeCode()`.

### getKeyJDBCType

    protected int getKeyJDBCType()

  Return the JDBC `Types` type of the column for this mapping. Uses the preferred type for the `getKeyDataStoreTypeCode()` by default.

### toMappingInfo

    public void toMappingInfo(MappingInfo info)

  Description copied from interface: `Mapping`
  Serialize this mapping to a simple `MappingInfo` instance for transfer to XML or some other format.
  Overrides:
    `toMappingInfo` in class `ContainerFieldMapping`

### 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 `AbstractMapFieldMapping`
  Following copied from class: `kodo.jdbc.meta.AbstractFieldMapping`
  See Also:
    `AbstractFieldMapping.addMappingInfoAttributes(java.util.Collection)`

### 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.
  Overrides:
    `addMappingInfoAttributes` in class `ContainerFieldMapping`

### 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 `AbstractMapFieldMapping`

### refSchemaComponents

    public void refSchemaComponents()

  Description copied from interface: `Mapping`
  Increment the reference count of all used schema components.
  Overrides:
    `refSchemaComponents` in class `ContainerFieldMapping`

### getColumns

    public Column[] getColumns()

  Description copied from interface: `FieldMapping`
  Return the data columns for this mapping. This corresponds to the field-order foreign key columns in relations.

### 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.
  Overrides:
    `getKeyColumns` in class `AbstractFieldMapping`

### getResults

    protected Result[] getResults(KodoStateManager sm,
                                  JDBCStoreManager store,
                                  JDBCFetchConfiguration fetch,
                                  int eagerMode,
                                  boolean lrs)
                           throws SQLException

  Description copied from class: `AbstractMapFieldMapping`
  Return results containing all keys and values for this map. If two results are needed, return the result containing the keys in the array's 0th index, followed by the result containing the values in the 1st index. The results will be loaded with the `FieldMapping.loadKeyProjection(kodo.jdbc.runtime.JDBCStoreManager, kodo.jdbc.runtime.JDBCFetchConfiguration, kodo.jdbc.sql.Result, kodo.jdbc.sql.Joins)` and `FieldMapping.loadProjection(kodo.jdbc.runtime.JDBCStoreManager, kodo.jdbc.runtime.JDBCFetchConfiguration, kodo.jdbc.sql.Result, kodo.jdbc.sql.Joins)` methods.
  Overrides:
    `getResults` in class `AbstractMapFieldMapping`

### selectValues

    protected void selectValues(Select sel,
                                KodoStateManager sm,
                                JDBCStoreManager store,
                                JDBCFetchConfiguration fetch,
                                Joins joins)

  Description copied from class: `AbstractMapFieldMapping`
  Implement this method to select the values of this mapping. If the values are FCOs, do not select them with any eager fetching enabled. Used in LRS support.
  Overrides:
    `selectValues` in class `AbstractMapFieldMapping`

### selectKeys

    protected void selectKeys(Select sel,
                              KodoStateManager sm,
                              JDBCStoreManager store,
                              JDBCFetchConfiguration fetch,
                              Joins joins)

  Description copied from class: `AbstractMapFieldMapping`
  Implement this method to select the keys of this mapping. If the keys are FCOs, do not select them with any eager fetching enabled. Used in LRS support.
  Overrides:
    `selectKeys` in class `AbstractMapFieldMapping`

### insert

    public void insert(KodoStateManager sm,
                       RowManager rm)
                throws SQLException

  Description copied from interface: `Mapping`
  Set values for the mapping into the proper rows. For class mappings, this method will be called only after the corresponding method has been called for all fields of this mapping.
  Overrides:
    `insert` in class `ContainerFieldMapping`

### update

    public void update(KodoStateManager sm,
                       RowManager rm)
                throws SQLException

  Description copied from interface: `Mapping`
  Set values for the mapping into the proper rows.
  Overrides:
    `update` in class `ContainerFieldMapping`
  Following copied from interface: `kodo.jdbc.meta.Mapping`
  See Also:
    `Mapping.insert(kodo.runtime.KodoStateManager, kodo.jdbc.sql.RowManager)`

### delete

    public void delete(KodoStateManager sm,
                       RowManager rm)
                throws SQLException

  Description copied from class: `ReferenceFieldMapping`
  Delete the row for this object if the reference foreign key exists.
  Overrides:
    `delete` in class `ContainerFieldMapping`
  Following copied from interface: `kodo.jdbc.meta.Mapping`
  See Also:
    `Mapping.insert(kodo.runtime.KodoStateManager, kodo.jdbc.sql.RowManager)`

### 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.
  Overrides:
    `nullEmbedded` in class `ContainerFieldMapping`
  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.
  Overrides:
    `deleteEmbedded` in class `AbstractFieldMapping`
  Following copied from interface: `kodo.jdbc.meta.FieldMapping`
  See Also:
    `Mapping.insert(kodo.runtime.KodoStateManager, kodo.jdbc.sql.RowManager)`

Overview | Package | Class | Tree | Deprecated | Index | Help
| SolarMetric Kodo JDO 3.4.1 generated on May 30 2006
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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