public class ObjectRelationalDataTypeDescriptor extends RelationalDescriptor
Purpose: Differentiates object-relational descriptors from normal relational descriptors. The object-relational descriptor describes a type not a table, (although there is normally a table associated with the type, unless it is aggregate).
DO_NOT_SEND_CHANGES, INVALIDATE_CHANGED_OBJECTS, ISOLATE_CACHE_AFTER_TRANSACTION, ISOLATE_CACHE_ALWAYS, ISOLATE_NEW_DATA_AFTER_TRANSACTION, SEND_NEW_OBJECTS_WITH_CHANGES, SEND_OBJECT_CHANGES, shouldUseFullChangeSetsForNewObjects, UNDEFINED_ISOLATATION, UNDEFINED_OBJECT_CHANGE_BEHAVIOR, USE_SESSION_CACHE_AFTER_TRANSACTION| Constructor and Description |
|---|
ObjectRelationalDataTypeDescriptor() |
| Modifier and Type | Method and Description |
|---|---|
void |
addFieldOrdering(String fieldName)
PUBLIC:
Order the fields in a specific
Add the field ordering, this will order the fields in the order this method is called.
|
static Object |
buildArrayObjectFromArray(Object array)
INTERNAL:
Build array of objects for Array data type.
|
static Object |
buildArrayObjectFromStruct(Object structure)
INTERNAL:
Build array of objects for Struct data type.
|
static Object |
buildContainerFromArray(Array fieldValue,
ObjectRelationalDatabaseField arrayField,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build and return the nested rows from the specified field value.
|
Vector |
buildDirectValuesFromFieldValue(Object fieldValue)
INTERNAL:
Extract the direct values from the specified field value.
|
Object |
buildFieldValueFromDirectValues(Vector directValues,
String elementDataTypeName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build the appropriate field value for the specified
set of direct values.
|
Object |
buildFieldValueFromNestedRow(org.eclipse.persistence.internal.sessions.AbstractRecord nestedRow,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build and return the field value from the specified nested database row.
|
Object |
buildFieldValueFromNestedRows(Vector nestedRows,
String structureName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build and return the appropriate field value for the specified
set of nested rows.
|
org.eclipse.persistence.internal.sessions.AbstractRecord |
buildNestedRowFromFieldValue(Object fieldValue)
INTERNAL:
Build and return the nested database row from the specified field value.
|
Vector |
buildNestedRowsFromFieldValue(Object fieldValue,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build and return the nested rows from the specified field value.
|
org.eclipse.persistence.internal.sessions.AbstractRecord |
buildRowFromStructure(Struct structure)
INTERNAL:
Build a row representation from the ADT structure field array.
|
Struct |
buildStructureFromRow(org.eclipse.persistence.internal.sessions.AbstractRecord row,
org.eclipse.persistence.internal.sessions.AbstractSession session,
Connection connection)
INTERNAL:
Build a ADT structure from the row data.
|
Vector |
getOrderedFields()
INTERNAL:
Return the field order.
|
Ref |
getRef(Object object,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Get the ref for the object.
|
String |
getStructureName()
PUBLIC:
Return the name of the structure.
|
void |
initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Auto-Default orderedFields to fields
|
boolean |
isObjectRelationalDataTypeDescriptor()
PUBLIC:
Return if this is an ObjectRelationalDataTypeDescriptor.
|
boolean |
requiresInitialization()
INTERNAL:
Aggregates obj-rel are initialized normally as no cloning is required.
|
void |
setOrderedFields(Vector orderedFields)
INTERNAL:
Set the field order.
|
void |
setStructureName(String structureName)
PUBLIC:
Set the name of the structure.
|
addTableName, getTableName, getTableNames, setDefaultTableName, setTableName, setTableNames, setTableQualifier, usePropertyAccessForWeaving, usesPropertyAccessForWeavingaddAbstractQueryKey, addCascadeLockingPolicy, addConstraintDependencies, addConstraintDependency, addDirectMapping, addDirectMapping, addDirectQueryKey, addForeignKeyFieldForMultipleTable, addForeignKeyFieldNameForMultipleTable, addMapping, addMappingsPostCalculateChanges, addMappingsPostCalculateChangesOnDeleted, addPrimaryKeyField, addPrimaryKeyFieldName, addQueryKey, addTable, adjustMultipleTableInsertOrder, alwaysConformResultsInUnitOfWork, alwaysRefreshCache, alwaysRefreshCacheOnRemote, applyAmendmentMethod, applyAmendmentMethod, arePrimaryKeyFields, buildCallFromStatement, buildField, buildField, buildField, buildFieldValueFromForeignKeys, checkInheritanceTreeAggregateSettings, clone, convertClassNamesToClasses, createCopyPolicy, createInstantiationPolicy, descriptorIsAggregate, descriptorIsAggregateCollection, descriptorIsForInterface, descriptorIsNormal, disableCacheHits, disableCacheHitsOnRemote, dontAlwaysConformResultsInUnitOfWork, dontAlwaysRefreshCache, dontAlwaysRefreshCacheOnRemote, dontDisableCacheHits, dontDisableCacheHitsOnRemote, dontOnlyRefreshCacheIfNewerVersion, getAdditionalAggregateCollectionKeyFields, getAdditionalTablePrimaryKeyFields, getAdditionalWritableMapKeyFields, getAlias, getAllFields, getAmendmentClass, getAmendmentClassName, getAmendmentMethodName, getCacheInterceptorClass, getCacheInterceptorClassName, getCacheInvalidationPolicy, getCacheKeyType, getCacheSynchronizationType, getCascadeLockingPolicies, getCMPPolicy, getConstraintDependencies, getCopyPolicy, getCopyPolicyClassName, getDefaultDeleteObjectQueryRedirector, getDefaultFetchGroup, getDefaultInsertObjectQueryRedirector, getDefaultQueryRedirector, getDefaultReadAllQueryRedirector, getDefaultReadObjectQueryRedirector, getDefaultReportQueryRedirector, getDefaultTable, getDefaultUpdateObjectQueryRedirector, getDerivesIdMappinps, getDescriptorEventManager, getDescriptorInheritancePolicy, getDescriptorQueryManager, getDescriptorType, getDescriptorTypeValue, getEventManager, getFetchGroupManager, getFields, getHistoryPolicy, getIdentityMapClass, getIdentityMapSize, getIdValidation, getInheritancePolicy, getInheritancePolicyOrNull, getInstantiationPolicy, getInterfacePolicy, getInterfacePolicyOrNull, getJavaClass, getJavaClassName, getLockableMappings, getMappingForAttributeName, getMappings, getMappingsPostCalculateChanges, getMappingsPostCalculateChangesOnDeleted, getMultipleTableForeignKeyAssociations, getMultipleTableForeignKeys, getMultipleTableInsertOrder, getMultipleTablePrimaryKeyAssociations, getObjectBuilder, getObjectChangePolicy, getObjectChangePolicyInternal, getOptimisticLockingPolicy, getPreDeleteMappings, getPrimaryKeyFieldNames, getPrimaryKeyFields, getPrimaryKeyIdValidations, getProperties, getProperty, getQueryKeyNamed, getQueryKeys, getQueryManager, getRemoteIdentityMapClass, getRemoteIdentityMapSize, getReturningPolicy, getRootDescriptor, getSequence, getSequenceNumberField, getSequenceNumberFieldName, getSequenceNumberName, getSessionName, getTable, getTablePerClassPolicy, getTables, getTypedField, getUnitOfWorkCacheIsolationLevel, getWrapperPolicy, hasCascadeLockingPolicies, hasCMPPolicy, hasDependencyOnParts, hasDerivedId, hasFetchGroupManager, hasInheritance, hasInterfacePolicy, hasMappingsPostCalculateChanges, hasMappingsPostCalculateChangesOnDeleted, hasMultipleTableConstraintDependecy, hasMultipleTables, hasPessimisticLockingPolicy, hasPreDeleteMappings, hasPrivatelyOwnedParts, hasQueryKeyOrMapping, hasRelationships, hasReturningPolicy, hasSimplePrimaryKey, hasTablePerClassPolicy, hasWrapperPolicy, initializeAggregateInheritancePolicy, initializeMultipleTablePrimaryKeyFields, interfaceInitialization, isAbstract, isAggregateCollectionDescriptor, isAggregateDescriptor, isChildDescriptor, isDescriptorForCMP, isDescriptorForInterface, isDescriptorTypeAggregate, isDescriptorTypeNormal, isFullyInitialized, isInterfaceChildDescriptor, isInvalid, isIsolated, isMultipleTableDescriptor, isNativeConnectionRequired, isPrimaryKeySetAfterInsert, isReturnTypeRequiredForReturningPolicy, onlyRefreshCacheIfNewerVersion, postInitialize, preInitialize, preInterfaceInitialization, rehashFieldDependancies, reInitializeJoinedAttributes, remoteInitialization, removeMappingForAttributeName, removeProperty, setAdditionalTablePrimaryKeyFields, setAlias, setAmendmentClass, setAmendmentClassName, setAmendmentMethodName, setCacheInterceptorClass, setCacheInterceptorClassName, setCacheInvalidationPolicy, setCacheKeyType, setCacheSynchronizationType, setCMPPolicy, setConstraintDependencies, setCopyPolicy, setCopyPolicyClassName, setDefaultDeleteObjectQueryRedirector, setDefaultDeleteObjectQueryRedirectorClassName, setDefaultInsertObjectQueryRedirector, setDefaultInsertObjectQueryRedirectorClassName, setDefaultQueryRedirector, setDefaultQueryRedirectorClassName, setDefaultReadAllQueryRedirector, setDefaultReadAllQueryRedirectorClassName, setDefaultReadObjectQueryRedirector, setDefaultReadObjectQueryRedirectorClassName, setDefaultReportQueryRedirector, setDefaultReportQueryRedirectorClassName, setDefaultTable, setDefaultUpdateObjectQueryRedirector, setDefaultUpdateObjectQueryRedirectorClassName, setDescriptorType, setDescriptorTypeValue, setEventManager, setExistenceChecking, setFetchGroupManager, setFields, setForeignKeyFieldNamesForMultipleTable, setHasMultipleTableConstraintDependecy, setHasRelationships, setHasSimplePrimaryKey, setHistoryPolicy, setIdentityMapClass, setIdentityMapSize, setIdValidation, setInheritancePolicy, setInstantiationPolicy, setInterfacePolicy, setInternalDefaultTable, setInternalDefaultTable, setIsIsolated, setIsNativeConnectionRequired, setJavaClass, setJavaClassName, setJavaInterface, setJavaInterfaceName, setLockableMappings, setMappings, setMultipleTableInsertOrder, setObjectChangePolicy, setOptimisticLockingPolicy, setPrimaryKeyFieldName, setPrimaryKeyFieldNames, setPrimaryKeyFields, setPrimaryKeyIdValidations, setProperties, setProperty, setQueryKeys, setQueryManager, setReadOnly, setRemoteIdentityMapClass, setRemoteIdentityMapSize, setReturningPolicy, setSequence, setSequenceNumberField, setSequenceNumberFieldName, setSequenceNumberName, setShouldAcquireCascadedLocks, setShouldAlwaysConformResultsInUnitOfWork, setShouldAlwaysRefreshCache, setShouldAlwaysRefreshCacheOnRemote, setShouldBeReadOnly, setShouldDisableCacheHits, setShouldDisableCacheHitsOnRemote, setShouldOnlyRefreshCacheIfNewerVersion, setShouldOrderMappings, setShouldRegisterResultsInUnitOfWork, setTablePerClassPolicy, setTables, setUnitOfWorkCacheIsolationLevel, setWrapperPolicy, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldAlwaysRefreshCache, shouldAlwaysRefreshCacheOnRemote, shouldBeReadOnly, shouldDisableCacheHits, shouldDisableCacheHitsOnRemote, shouldIsolateObjectsInUnitOfWork, shouldIsolateObjectsInUnitOfWorkEarlyTransaction, shouldOnlyRefreshCacheIfNewerVersion, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseCacheIdentityMap, shouldUseFullChangeSetsForNewObjects, shouldUseFullIdentityMap, shouldUseHardCacheWeakIdentityMap, shouldUseNoIdentityMap, shouldUseRemoteCacheIdentityMap, shouldUseRemoteFullIdentityMap, shouldUseRemoteHardCacheWeakIdentityMap, shouldUseRemoteNoIdentityMap, shouldUseRemoteSoftCacheWeakIdentityMap, shouldUseRemoteSoftIdentityMap, shouldUseRemoteWeakIdentityMap, shouldUseSessionCacheInUnitOfWorkEarlyTransaction, shouldUseSoftCacheWeakIdentityMap, shouldUseSoftIdentityMap, shouldUseWeakIdentityMap, supportsChangeTracking, toString, useAllFieldsLocking, useCacheIdentityMap, useChangedFieldsLocking, useCloneCopyPolicy, useCloneCopyPolicy, useDefaultConstructorInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFullIdentityMap, useHardCacheWeakIdentityMap, useInstantiationCopyPolicy, useMethodInstantiationPolicy, useNoIdentityMap, useRemoteCacheIdentityMap, useRemoteFullIdentityMap, useRemoteHardCacheWeakIdentityMap, useRemoteNoIdentityMap, useRemoteSoftCacheWeakIdentityMap, useRemoteSoftIdentityMap, useRemoteWeakIdentityMap, useSelectedFieldsLocking, usesFieldLocking, useSoftCacheWeakIdentityMap, useSoftIdentityMap, usesOptimisticLocking, usesSequenceNumbers, usesVersionLocking, useTimestampLocking, useTimestampLocking, useVersionLocking, useVersionLocking, useWeakIdentityMappublic void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DescriptorException
initialize in class ClassDescriptorDescriptorExceptionpublic void addFieldOrdering(String fieldName)
fieldName - the name of the field to add ordering on.public Vector buildDirectValuesFromFieldValue(Object fieldValue) throws DatabaseException
buildDirectValuesFromFieldValue in class ClassDescriptorDatabaseExceptionpublic Object buildFieldValueFromDirectValues(Vector directValues, String elementDataTypeName, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
buildFieldValueFromDirectValues in class ClassDescriptorDatabaseExceptionpublic Object buildFieldValueFromNestedRow(org.eclipse.persistence.internal.sessions.AbstractRecord nestedRow, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
buildFieldValueFromNestedRow in class ClassDescriptorDatabaseExceptionpublic Object buildFieldValueFromNestedRows(Vector nestedRows, String structureName, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
buildFieldValueFromNestedRows in class ClassDescriptorDatabaseExceptionpublic static Object buildContainerFromArray(Array fieldValue, ObjectRelationalDatabaseField arrayField, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
DatabaseExceptionpublic org.eclipse.persistence.internal.sessions.AbstractRecord buildNestedRowFromFieldValue(Object fieldValue) throws DatabaseException
buildNestedRowFromFieldValue in class ClassDescriptorDatabaseExceptionpublic Vector buildNestedRowsFromFieldValue(Object fieldValue, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
buildNestedRowsFromFieldValue in class ClassDescriptorDatabaseExceptionpublic org.eclipse.persistence.internal.sessions.AbstractRecord buildRowFromStructure(Struct structure) throws DatabaseException
DatabaseExceptionpublic Struct buildStructureFromRow(org.eclipse.persistence.internal.sessions.AbstractRecord row, org.eclipse.persistence.internal.sessions.AbstractSession session, Connection connection) throws DatabaseException
DatabaseExceptionpublic static Object buildArrayObjectFromArray(Object array) throws DatabaseException
DatabaseExceptionpublic static Object buildArrayObjectFromStruct(Object structure) throws DatabaseException
DatabaseExceptionpublic Vector getOrderedFields()
public Ref getRef(Object object, org.eclipse.persistence.internal.sessions.AbstractSession session)
public String getStructureName()
public boolean isObjectRelationalDataTypeDescriptor()
isObjectRelationalDataTypeDescriptor in class ClassDescriptorpublic boolean requiresInitialization()
requiresInitialization in class ClassDescriptorpublic void setOrderedFields(Vector orderedFields)
public void setStructureName(String structureName)