Overview | Package | Class | Tree | Deprecated | Index | Help
| SolarMetric Kodo JDO 3.0.3 generated on February 20 2004
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## kodo.jdbc.meta
Class ValueFieldMapping

    java.lang.Object
      |
      +--kodo.meta.DelegatingExtensions
            |
            +--kodo.meta.DelegatingFieldMetaData
                  |
                  +--kodo.jdbc.meta.FieldMapping
                        |
                        +--kodo.jdbc.meta.ReferenceFieldMapping
                              |
                              +--kodo.jdbc.meta.ColumnFieldMapping
                                    |
                                    +--kodo.jdbc.meta.ValueFieldMapping

All Implemented Interfaces:
  Comparable, Extensions, 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.FieldMapping
`AUTO_INCREMENT, DELETE_ACTION, ELEMENT_DELETE_ACTION, ELEMENT_INDEXED, ELEMENT_SIZE, FIELD_MAP, INDEXED, KEY_DELETE_ACTION, KEY_INDEXED, KEY_SIZE, REF_DELETE_ACTION, REF_INDEXED, SIZE, VALUE_DELETE_ACTION, VALUE_INDEXED, VALUE_SIZE`

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.meta.FieldMetaData
`DEPENDENT, ELEMENT_DEPENDENT, ELEMENT_TYPE, EXTERNALIZER, FACTORY, FETCH_GROUP, INVERSE_OWNER, KEY_DEPENDENT, KEY_TYPE, LRS, MANAGE_NONE, MANAGE_PERSISTENT, MANAGE_TRANSACTIONAL, NULL_DEFAULT, NULL_EXCEPTION, NULL_NONE, VALUE_DEPENDENT, VALUE_TYPE`

Constructor Summary
`ValueFieldMapping(FieldMetaData meta)` Constructor.

Method Summary
`void` | `fromMappingInfo(MappingInfo info, boolean adapt)` Deserialize this mapping from a simple `MappingInfo` instance parsed from XML or some other format.
`FieldMapping` | `getFieldMapping()` Return the field mapping that owns this mapping's columns.
`int` | `getJoinTypeCode(Column col)` Return the type code from `FieldMapping` of the JDBC value returned from calls to `getJoinValue(kodo.jdbc.sql.Result, kodo.jdbc.schema.Column[], kodo.jdbc.schema.ForeignKey)` 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)` 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)` 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.
`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
`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, getRefJoinType, getSelectJoins, getTable, join, setRefForeignKey, setRefForeignKey, setRefJoinType, wherePrimaryKey, whereRefForeignKey`

Methods inherited from class kodo.jdbc.meta.FieldMapping
`appendIsEmpty, containsSelectTables, delete, deleteEmbedded, getDataStoreValue, getDBDictionary, getDeclaredElementTypeMapping, getDeclaredElementTypeMetaData, getDeclaredKeyTypeMapping, getDeclaredKeyTypeMetaData, getDeclaredTypeMapping, getDeclaredTypeMetaData, getDefaults, getDeleteAction, getElementDeleteAction, getElementIndexed, getElementSize, getElementTypeMapping, getElementTypeMetaData, getFieldMappingName, getIndexed, getInverseOwnerMapping, getInverseOwnerMetaData, getKeyColumns, getKeyDataStoreValue, getKeyDeleteAction, getKeyIndexed, getKeySize, getKeyTypeMapping, getKeyTypeMetaData, getMappingRepository, getOwner, getOwnerMapping, getRefDeleteAction, getRefIndexed, getSize, getTypeMapping, getTypeMetaData, insert, invalidateResolve, isAutoIncrement, isCustomDelete, isCustomDeleteEmbedded, isCustomInsert, isCustomNullEmbedded, isCustomUpdate, isDeleteActionDeferred, isElementDeleteActionDeferred, isKeyDeleteActionDeferred, isRefDeleteActionDeferred, isResolved, joinKey, joinKeyRelation, joinRelation, loadKeyProjection, newInstance, nullEmbedded, resolve, selectEager, setAutoIncrement, setDeleteAction, setElementDeleteAction, setElementIndexed, setElementSize, setFieldMappingName, setIndexed, setKeyDeleteAction, setKeyIndexed, setKeySize, setOwner, setRefDeleteAction, setRefIndexed, setSize, supportsTwoPartSelect, update`

Methods inherited from class kodo.meta.DelegatingFieldMetaData
`compareTo, equals, getComparator, getDeclaredElementType, getDeclaredElementTypeCode, getDeclaredIndex, getDeclaredKeyType, getDeclaredKeyTypeCode, getDeclaredType, getDeclaredTypeCode, getDelegate, getElementType, getElementTypeCode, getElementTypeName, getExternalizer, getExternalizerMethod, getExternalValue, getFactory, getFactoryMethod, getFetchGroup, getFieldFlag, getFieldValue, getFullName, getIndex, getInnermostDelegate, getInverseOwner, getKeyType, getKeyTypeCode, getKeyTypeName, getManagement, getName, getNullValue, getPrimaryKeyIndex, getProxyType, getType, getTypeCode, getTypeName, hashCode, isDefaultFetchGroupExplicit, isDependent, isElementDependent, isElementEmbedded, isEmbedded, isExplicit, isInDefaultFetchGroup, isKeyDependent, isKeyEmbedded, isLRS, isPrimaryKey, isTransient, setComparator, setDeclaredElementType, setDeclaredElementTypeCode, setDeclaredIndex, setDeclaredKeyType, setDeclaredKeyTypeCode, setDeclaredType, setDeclaredTypeCode, setDependent, setElementDependent, setElementEmbedded, setElementTypeName, setEmbedded, setExplicit, setExternalizer, setFactory, setFetchGroup, setInDefaultFetchGroup, setIndex, setInverseOwner, setKeyDependent, setKeyEmbedded, setKeyTypeName, setLRS, setManagement, setName, setNullValue, setPrimaryKey, setPrimaryKeyIndex, setProxyType, setTransient, setTypeName, toString`

Methods inherited from class kodo.meta.DelegatingExtensions
`addExtension, addExtension, getBooleanExtension, getBooleanExtension, getDoubleExtension, getDoubleExtension, getEmbeddedExtensions, getEmbeddedExtensions, 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.Extensions
`addExtension, addExtension, getBooleanExtension, getBooleanExtension, getDoubleExtension, getDoubleExtension, getEmbeddedExtensions, getEmbeddedExtensions, getExtensionKeys, getExtensionKeys, getExtensionVendors, getIntExtension, getIntExtension, getObjectExtension, getObjectExtension, getStringExtension, getStringExtension, hasExtension, hasExtension, isEmpty, removeEmbeddedExtensions, removeEmbeddedExtensions, removeExtension, removeExtension`

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.

### fromMappingInfo

    public void fromMappingInfo(MappingInfo info,
                                boolean adapt)

  Description copied from interface: `Mapping`
  Deserialize this mapping from a simple `MappingInfo` instance parsed from XML or some other format. If the info is incompatible and `adapt` is true, try to adapt to the new info. This method must validate the given mapping information using the `SchemaGroup.findTable(kodo.jdbc.schema.Table)` method to find any needed tables, the `Table.getColumn(java.lang.String)` method to retrieve columns from those tables, and the `Column.isCompatible(int, int)` method to check all column types. This validation is important, as some schema groups use these methods to build themselves up dynamically rather than reading schema information from the database.
  Overrides:
    `fromMappingInfo` in class `ColumnFieldMapping`
  Following copied from interface: `kodo.jdbc.meta.Mapping`
  Throws:
    `MappingInfoNotFoundException` - if the given info is invalid

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

### load

    public void load(KodoStateManager sm,
                     JDBCStoreManager store,
                     JDBCFetchConfiguration fetch,
                     Result res)
              throws SQLException

  Description copied from class: `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.
  Overrides:
    `load` in class `FieldMapping`

### loadProjection

    public Object loadProjection(JDBCStoreManager store,
                                 JDBCFetchConfiguration fetch,
                                 Result res)
                          throws SQLException

  Description copied from class: `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()`.
  Overrides:
    `loadProjection` in class `FieldMapping`

### 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)
                        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 `FieldMapping` of the JDBC value returned from calls to `JoinableMapping.getJoinValue(kodo.jdbc.sql.Result, kodo.jdbc.schema.Column[], kodo.jdbc.schema.ForeignKey)` 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`

Overview | Package | Class | Tree | Deprecated | Index | Help
| SolarMetric Kodo JDO 3.0.3 generated on February 20 2004
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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