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 CollectionFieldMapping

    java.lang.Object
      |
      +--kodo.meta.DelegatingExtensions
            |
            +--kodo.meta.DelegatingFieldMetaData
                  |
                  +--kodo.jdbc.meta.FieldMapping
                        |
                        +--kodo.jdbc.meta.ReferenceFieldMapping
                              |
                              +--kodo.jdbc.meta.ContainerFieldMapping
                                    |
                                    +--kodo.jdbc.meta.AbstractCollectionFieldMapping
                                          |
                                          +--kodo.jdbc.meta.ColumnCollectionFieldMapping
                                                |
                                                +--kodo.jdbc.meta.CollectionFieldMapping

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

public class CollectionFieldMapping
extends ColumnCollectionFieldMapping

Maps a collection of simple values.

Inner classes inherited from class kodo.jdbc.meta.AbstractCollectionFieldMapping
`AbstractCollectionFieldMapping.LRSProxyCollection`

Field Summary
`static String` | `TYPE`

Fields inherited from class kodo.jdbc.meta.AbstractCollectionFieldMapping
`ORDERED`

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

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
`CollectionFieldMapping(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.
`String` | `getMappingType()` Return the abbreviated name of this mapping, or the full class name if it is a custom mapping.
`static boolean` | `isCollectionTable(Table table, ReverseMappingTool tool)` Return true if the given table matches the pattern for a collection table.
`void` | `load(KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch, Result res)` Loads the metadata.
`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` | `selectEager(Select sel, KodoStateManager sm, JDBCStoreManager store, JDBCFetchConfiguration fetch)` Select eager to-many relations.

Methods inherited from class kodo.jdbc.meta.ColumnCollectionFieldMapping
`delete, deleteEmbedded, getColumn, getColumns, getDataStoreTypeCode, getJDBCType, getResult, insert, nullEmbedded, refSchemaComponents, setColumn, toMappingInfo, update`

Methods inherited from class kodo.jdbc.meta.AbstractCollectionFieldMapping
`fromMappingInfo, getOrderColumn, getOrdered, load, loadBatchedResult, map, setOrderColumn, setOrdered, toArray, toCollection`

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

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

Methods inherited from class kodo.jdbc.meta.FieldMapping
`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, setAutoIncrement, setDeleteAction, setElementDeleteAction, setElementIndexed, setElementSize, setFieldMappingName, setIndexed, setKeyDeleteAction, setKeyIndexed, setKeySize, setOwner, setRefDeleteAction, setRefIndexed, setSize, 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.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

### CollectionFieldMapping

    public CollectionFieldMapping(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 `ColumnCollectionFieldMapping`
  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 `ColumnCollectionFieldMapping`

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

### isCollectionTable

    public static boolean isCollectionTable(Table table,
                                            ReverseMappingTool tool)

  Return true if the given table matches the pattern for a collection table.

### selectEager

    public void selectEager(Select sel,
                            KodoStateManager sm,
                            JDBCStoreManager store,
                            JDBCFetchConfiguration fetch)

  Description copied from class: `FieldMapping`
  Select eager to-many relations. This method is only called under `FetchConfiguration.EAGER_FETCH_MULTIPLE`. Does nothing by default.
  Overrides:
    `selectEager` in class `FieldMapping`
  Following copied from class: `kodo.jdbc.meta.FieldMapping`
  Parameters:
    `sel` - the select to add to
    `sm` - the instance being loaded, or null if not initialized yet or selecting for multiple instances
    `store` - the current store manager
    `fetch` - fetch configuration

### load

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

  Description copied from class: `ContainerFieldMapping`
  Loads the metadata.
  Overrides:
    `load` in class `ContainerFieldMapping`

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

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.