kodo.jdbc.meta
Class ManyToPCObjectMapFieldMapping
java.lang.Object
|
+--kodo.meta.DelegatingExtensions
|
+--kodo.meta.DelegatingFieldMetaData
|
+--kodo.jdbc.meta.FieldMapping
|
+--kodo.jdbc.meta.ReferenceFieldMapping
|
+--kodo.jdbc.meta.ContainerFieldMapping
|
+--kodo.jdbc.meta.AbstractMapFieldMapping
|
+--kodo.jdbc.meta.ManyToColumnMapFieldMapping
|
+--kodo.jdbc.meta.ManyToPCObjectMapFieldMapping
- All Implemented Interfaces:
- Comparable, Extensions, FieldMetaData, JDBCTypes, JDOTypes, Mapping
- public class ManyToPCObjectMapFieldMapping
- extends ManyToColumnMapFieldMapping
A map where the keys are related objects and the values are unknown
persistent objects.
| 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 |
| Methods inherited from class kodo.jdbc.meta.ManyToColumnMapFieldMapping |
delete, deleteEmbedded, getColumns, getForeignKey, getJDBCType, getKeyColumns, getKeyDataStoreValue, getResults, getValueColumn, insert, joinKeyRelation, loadKeyProjection, nullEmbedded, refSchemaComponents, selectKeys, selectValues, setForeignKey, setValueColumn, toMappingInfo, update |
| Methods inherited from class kodo.jdbc.meta.ContainerFieldMapping |
appendIsEmpty, appendIsNotNull, appendIsNull, containsSelectTables, getContainerMeta, getMetaDataColumn, join, load, select, setContainerMeta, setMetaDataColumn, supportsTwoPartSelect |
| Methods inherited from class kodo.jdbc.meta.ReferenceFieldMapping |
createRefForeignKey, fromMappingInfo, getJoinedRow, getRefForeignKey, getRefJoinType, getSelectJoins, getTable, join, setRefForeignKey, setRefForeignKey, setRefJoinType, wherePrimaryKey, whereRefForeignKey |
| Methods inherited from class kodo.jdbc.meta.FieldMapping |
delete, deleteEmbedded, getDBDictionary, getDeclaredElementTypeMapping, getDeclaredElementTypeMetaData, getDeclaredKeyTypeMapping, getDeclaredKeyTypeMetaData, getDeclaredTypeMapping, getDeclaredTypeMetaData, getDefaults, getDeleteAction, getElementDeleteAction, getElementIndexed, getElementSize, getElementTypeMapping, getElementTypeMetaData, getFieldMappingName, getIndexed, getInverseOwnerMapping, getInverseOwnerMetaData, 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, joinRelation, newInstance, nullEmbedded, resolve, reverseMap, selectEager, 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 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 |
TYPE
public static final String TYPE
ManyToPCObjectMapFieldMapping
public ManyToPCObjectMapFieldMapping(FieldMetaData meta)
- Constructor. Supply underlying metadata.
getDataStoreTypeCode
protected int getDataStoreTypeCode()
- Description copied from class:
ManyToColumnMapFieldMapping
- Return the type of the value stored in the data store for the value
column. Defaults to
FieldMetaData.getElementTypeCode().
- Overrides:
getDataStoreTypeCode in class ManyToColumnMapFieldMapping
getDataStoreValue
public Object getDataStoreValue(Object val)
- Description copied from class:
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.
- Overrides:
getDataStoreValue in class FieldMapping
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 ManyToColumnMapFieldMapping
- 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 ManyToColumnMapFieldMapping
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
Copyright 2001,2002 SolarMetric, Inc. All Rights Reserved.