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).
| Modifier and Type | Field and Description |
|---|---|
protected java.util.Vector |
allOrderedFields |
protected java.util.Vector |
orderedFields |
protected java.lang.String |
structureName |
accessorTree, additionalAggregateCollectionKeyFields, additionalTablePrimaryKeyFields, additionalWritableMapKeyFields, AGGREGATE, AGGREGATE_COLLECTION, alias, allFields, allSelectionFields, amendmentClass, amendmentClassName, amendmentMethodName, cacheInvalidationPolicy, cachePolicy, cascadedLockingInitialized, cascadeLockingPolicies, changePolicy, cmpPolicy, constraintDependencies, copyPolicy, copyPolicyClassName, defaultDeleteObjectQueryRedirector, defaultDeleteObjectQueryRedirectorClassName, defaultInsertObjectQueryRedirector, defaultInsertObjectQueryRedirectorClassName, defaultQueryRedirector, defaultQueryRedirectorClassName, defaultReadAllQueryRedirector, defaultReadAllQueryRedirectorClassName, defaultReadObjectQueryRedirector, defaultReadObjectQueryRedirectorClassName, defaultReportQueryRedirector, defaultReportQueryRedirectorClassName, defaultTable, defaultUpdateObjectQueryRedirector, defaultUpdateObjectQueryRedirectorClassName, derivesIdMappings, descriptorCustomizerClassName, descriptorType, DO_NOT_SEND_CHANGES, ERROR, fetchGroupManager, fields, foreignKeyValuesForCaching, hasMultipleTableConstraintDependecy, hasNoncacheableMappings, hasRelationships, hasSimplePrimaryKey, historyPolicy, idValidation, initializationStage, INITIALIZED, INTERFACE, interfaceInitializationStage, interfacePolicy, INVALIDATE_CHANGED_OBJECTS, isCascadeOnDeleteSetOnDatabaseOnSecondaryTables, isNativeConnectionRequired, ISOLATE_CACHE_AFTER_TRANSACTION, ISOLATE_CACHE_ALWAYS, ISOLATE_FROM_CLIENT_SESSION, ISOLATE_NEW_DATA_AFTER_TRANSACTION, javaClass, javaClassName, lockableMappings, mappings, mappingsPostCalculateChanges, mappingsPostCalculateChangesOnDeleted, multipleTableForeignKeys, multipleTableInsertOrder, multitenantPolicy, NORMAL, optimisticLockingPolicy, partitioningPolicy, partitioningPolicyName, POST_INITIALIZED, preDeleteMappings, PREINITIALIZED, primaryKeyFields, primaryKeyIdValidations, properties, queryKeys, queryManager, referencingClasses, returningPolicy, selectionFields, SEND_NEW_OBJECTS_WITH_CHANGES, SEND_OBJECT_CHANGES, sequence, sequenceNumberField, sequenceNumberName, serializedObjectPolicy, sessionName, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldBeReadOnly, shouldLockForClone, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseFullChangeSetsForNewObjects, tables, unconvertedProperties, UNDEFINED_ISOLATATION, UNDEFINED_OBJECT_CHANGE_BEHAVIOR, UNINITIALIZED, USE_SESSION_CACHE_AFTER_TRANSACTION, virtualAttributeMethods, weavingUsesPropertyAccess, wrapperPolicyattributeGroups, eventManager, field, inheritancePolicy, instantiationPolicy, objectBuilder| Constructor and Description |
|---|
ObjectRelationalDataTypeDescriptor() |
| Modifier and Type | Method and Description |
|---|---|
void |
addFieldOrdering(java.lang.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 java.lang.Object |
buildArrayObjectFromArray(java.lang.Object array)
INTERNAL:
Build array of objects for Array data type.
|
static java.lang.Object |
buildArrayObjectFromStruct(java.lang.Object structure)
INTERNAL:
Build array of objects for Struct data type.
|
static java.lang.Object |
buildContainerFromArray(java.sql.Array fieldValue,
ObjectRelationalDatabaseField arrayField,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build and return the nested rows from the specified field value.
|
java.util.Vector |
buildDirectValuesFromFieldValue(java.lang.Object fieldValue)
INTERNAL:
Extract the direct values from the specified field value.
|
java.lang.Object |
buildFieldValueFromDirectValues(java.util.Vector directValues,
java.lang.String elementDataTypeName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Build the appropriate field value for the specified
set of direct values.
|
java.lang.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.
|
java.lang.Object |
buildFieldValueFromNestedRows(java.util.Vector nestedRows,
java.lang.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(java.lang.Object fieldValue)
INTERNAL:
Build and return the nested database row from the specified field value.
|
java.util.Vector |
buildNestedRowsFromFieldValue(java.lang.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(java.sql.Struct structure)
INTERNAL:
Build a row representation from the ADT structure field array.
|
java.sql.Struct |
buildStructureFromRow(org.eclipse.persistence.internal.sessions.AbstractRecord row,
org.eclipse.persistence.internal.sessions.AbstractSession session,
java.sql.Connection connection)
INTERNAL:
Build a ADT structure from the row data.
|
protected org.eclipse.persistence.internal.helper.DatabaseTable |
extractDefaultTable()
INTERNAL:
Aggregates use a dummy table as default.
|
java.util.Vector |
getOrderedFields()
INTERNAL:
Return the field order.
|
java.sql.Ref |
getRef(java.lang.Object object,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Get the ref for the object.
|
java.lang.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(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Aggregates obj-rel are initialized normally as no cloning is required.
|
void |
setOrderedFields(java.util.Vector orderedFields)
INTERNAL:
Set the field order.
|
void |
setStructureName(java.lang.String structureName)
PUBLIC:
Set the name of the structure.
|
protected void |
validateMappingType(DatabaseMapping mapping) |
addTableName, getTableName, getTableNames, isRelationalDescriptor, setDefaultTableName, setTableName, setTableNames, setTableQualifieraddAbstractQueryKey, addCascadeLockingPolicy, addConstraintDependencies, addConstraintDependency, addDirectMapping, addDirectMapping, addDirectQueryKey, addForeignKeyFieldForMultipleTable, addForeignKeyFieldNameForMultipleTable, addMapping, addMappingsPostCalculateChanges, addMappingsPostCalculateChangesOnDeleted, addPreDeleteMapping, addPrimaryKeyField, addPrimaryKeyFieldName, addQueryKey, addTable, addUnconvertedProperty, adjustMultipleTableInsertOrder, alwaysConformResultsInUnitOfWork, alwaysRefreshCache, alwaysRefreshCacheOnRemote, applyAmendmentMethod, applyAmendmentMethod, arePrimaryKeyFields, assignDefaultValues, buildBatchCriteriaByPK, buildCallFromStatement, buildField, buildField, buildField, buildFieldValueFromForeignKeys, checkDatabase, checkInheritanceTreeAggregateSettings, clearReferencingClasses, clone, convertClassNamesToClasses, createCopyPolicy, createInstantiationPolicy, createMultipleTableInsertOrder, createMultipleTableInsertOrderFromComparison, createTableComparison, createTableOrder, descriptorIsAggregate, descriptorIsAggregateCollection, descriptorIsForInterface, descriptorIsNormal, disableCacheHits, disableCacheHitsOnRemote, dontAlwaysConformResultsInUnitOfWork, dontAlwaysRefreshCache, dontAlwaysRefreshCacheOnRemote, dontDisableCacheHits, dontDisableCacheHitsOnRemote, dontOnlyRefreshCacheIfNewerVersion, getAccessorTree, getAdditionalAggregateCollectionKeyFields, getAdditionalTablePrimaryKeyFields, getAdditionalWritableMapKeyFields, getAlias, getAllFields, getAllSelectionFields, getAllSelectionFields, getAmendmentClass, getAmendmentClassName, getAmendmentMethodName, getAttributeGroup, getAttributeGroups, getCacheInterceptorClass, getCacheInterceptorClassName, getCacheInvalidationPolicy, getCacheIsolation, getCacheKeyType, getCachePolicy, getCacheSynchronizationType, getCascadeLockingPolicies, getCMPPolicy, getConstraintDependencies, getCopyPolicy, getCopyPolicyClassName, getDefaultDeleteObjectQueryRedirector, getDefaultFetchGroup, getDefaultInsertObjectQueryRedirector, getDefaultQueryRedirector, getDefaultReadAllQueryRedirector, getDefaultReadObjectQueryRedirector, getDefaultReportQueryRedirector, getDefaultTable, getDefaultUpdateObjectQueryRedirector, getDerivesIdMappinps, getDescriptorCustomizerClassName, getDescriptorEventManager, getDescriptorInheritancePolicy, getDescriptorQueryManager, getDescriptorType, getDescriptorTypeValue, getEventManager, getFetchGroupManager, getFields, getForeignKeyValuesForCaching, getFullyMergeEntity, getHistoryPolicy, getIdentityMapClass, getIdentityMapSize, getIdValidation, getInheritancePolicy, getInheritancePolicyOrNull, getInstantiationPolicy, getInterfacePolicy, getInterfacePolicyOrNull, getJavaClass, getJavaClassName, getLockableMappings, getMappingForAttributeName, getMappings, getMappingsPostCalculateChanges, getMappingsPostCalculateChangesOnDeleted, getMultipleTableForeignKeyAssociations, getMultipleTableForeignKeys, getMultipleTableInsertOrder, getMultipleTablePrimaryKeyAssociations, getMultitenantPolicy, getObjectBuilder, getObjectChangePolicy, getObjectChangePolicyInternal, getOptimisticLockingPolicy, getPartitioningPolicy, getPartitioningPolicyName, getPreDeleteMappings, getPrimaryKeyFieldNames, getPrimaryKeyFields, getPrimaryKeyIdValidations, getProperties, getProperty, getQueryKeyNamed, getQueryKeys, getQueryManager, getRemoteIdentityMapClass, getRemoteIdentityMapSize, getReturningPolicy, getRootDescriptor, getSelectionFields, getSelectionFields, getSequence, getSequenceNumberField, getSequenceNumberFieldName, getSequenceNumberName, getSerializedObjectPolicy, getSessionName, getTable, getTablePerClassPolicy, getTables, getTypedField, getUnconvertedProperties, getUnitOfWorkCacheIsolationLevel, getVirtualAttributeMethods, getWrapperPolicy, hasCascadeLockingPolicies, hasCMPPolicy, hasDependencyOnParts, hasDerivedId, hasEventManager, hasFetchGroupManager, hasInheritance, hasInterfacePolicy, hasMappingsPostCalculateChanges, hasMappingsPostCalculateChangesOnDeleted, hasMultipleTableConstraintDependecy, hasMultipleTables, hasMultitenantPolicy, hasNestedIdentityReference, hasNoncacheableMappings, hasPessimisticLockingPolicy, hasPreDeleteMappings, hasPrivatelyOwnedParts, hasQueryKeyOrMapping, hasRelationships, hasRelationshipsExceptBackpointer, hasReturningPolicy, hasSerializedObjectPolicy, hasSimplePrimaryKey, hasTablePerClassPolicy, hasTablePerMultitenantPolicy, hasTargetForeignKeyMapping, hasUnconvertedProperties, hasWrapperPolicy, initialize, initializeAggregateInheritancePolicy, initializeMultipleTablePrimaryKeyFields, initializeProperties, interfaceInitialization, isAbstract, isAggregateCollectionDescriptor, isAggregateDescriptor, isCascadeOnDeleteSetOnDatabaseOnSecondaryTables, isChildDescriptor, isDescriptorForInterface, isDescriptorTypeAggregate, isDescriptorTypeNormal, isEISDescriptor, isFullyInitialized, isInitialized, isInterfaceChildDescriptor, isInterfaceInitialized, isInvalid, isIsolated, isMultipleTableDescriptor, isNativeConnectionRequired, isPrimaryKeySetAfterInsert, isProtectedIsolation, isReturnTypeRequiredForReturningPolicy, isSharedIsolation, isXMLDescriptor, newAggregateCollectionMapping, newAggregateMapping, newDirectCollectionMapping, newDirectMapping, newManyToManyMapping, newManyToOneMapping, newOneToManyMapping, newOneToOneMapping, newUnidirectionalOneToManyMapping, notifyReferencingDescriptorsOfIsolation, onlyRefreshCacheIfNewerVersion, postInitialize, preInitialize, preInitializeInheritancePolicy, preInterfaceInitialization, prepareCascadeLockingPolicy, rehashFieldDependancies, reInitializeJoinedAttributes, remoteInitialization, removeMappingForAttributeName, removeProperty, selfValidationAfterInitialization, selfValidationBeforeInitialization, setAccessorTree, setAdditionalTablePrimaryKeyFields, setAdditionalTablePrimaryKeyFields, setAlias, setAllFields, setAmendmentClass, setAmendmentClassName, setAmendmentMethodName, setCacheable, setCacheInterceptorClass, setCacheInterceptorClassName, setCacheInvalidationPolicy, setCacheIsolation, setCacheKeyType, setCachePolicy, setCacheSynchronizationType, setCMPPolicy, setConstraintDependencies, setCopyPolicy, setCopyPolicyClassName, setDefaultDeleteObjectQueryRedirector, setDefaultDeleteObjectQueryRedirectorClassName, setDefaultInsertObjectQueryRedirector, setDefaultInsertObjectQueryRedirectorClassName, setDefaultQueryRedirector, setDefaultQueryRedirectorClassName, setDefaultReadAllQueryRedirector, setDefaultReadAllQueryRedirectorClassName, setDefaultReadObjectQueryRedirector, setDefaultReadObjectQueryRedirectorClassName, setDefaultReportQueryRedirector, setDefaultReportQueryRedirectorClassName, setDefaultTable, setDefaultUpdateObjectQueryRedirector, setDefaultUpdateObjectQueryRedirectorClassName, setDescriptorCustomizerClassName, setDescriptorType, setDescriptorTypeValue, setEventManager, setExistenceChecking, setFetchGroupManager, setFields, setForeignKeyFieldNamesForMultipleTable, setFullyMergeEntity, setHasMultipleTableConstraintDependecy, setHasRelationships, setHasSimplePrimaryKey, setHistoryPolicy, setIdentityMapClass, setIdentityMapSize, setIdValidation, setInheritancePolicy, setInitializationStage, setInstantiationPolicy, setInterfaceInitializationStage, setInterfacePolicy, setInternalDefaultTable, setInternalDefaultTable, setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables, setIsIsolated, setIsNativeConnectionRequired, setJavaClass, setJavaClassName, setJavaInterface, setJavaInterfaceName, setLockableMappings, setMappings, setMultipleTableForeignKeys, setMultipleTableInsertOrder, setMultitenantPolicy, setObjectBuilder, setObjectChangePolicy, setOptimisticLockingPolicy, setPartitioningPolicy, setPartitioningPolicyName, setPrimaryKeyFieldName, setPrimaryKeyFieldNames, setPrimaryKeyFields, setPrimaryKeyIdValidations, setProperties, setProperty, setQueryKeys, setQueryManager, setReadOnly, setRemoteIdentityMapClass, setRemoteIdentityMapSize, setReturningPolicy, setSequence, setSequenceNumberField, setSequenceNumberFieldName, setSequenceNumberName, setSerializedObjectPolicy, setSessionName, setShouldAcquireCascadedLocks, setShouldAlwaysConformResultsInUnitOfWork, setShouldAlwaysRefreshCache, setShouldAlwaysRefreshCacheOnRemote, setShouldBeReadOnly, setShouldDisableCacheHits, setShouldDisableCacheHitsOnRemote, setShouldLockForClone, setShouldOnlyRefreshCacheIfNewerVersion, setShouldOrderMappings, setShouldRegisterResultsInUnitOfWork, setTablePerClassPolicy, setTables, setUnitOfWorkCacheIsolationLevel, setVirtualAttributeMethods, setWrapperPolicy, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldAlwaysRefreshCache, shouldAlwaysRefreshCacheOnRemote, shouldBeReadOnly, shouldDisableCacheHits, shouldDisableCacheHitsOnRemote, shouldIsolateObjectsInUnitOfWork, shouldIsolateObjectsInUnitOfWorkEarlyTransaction, shouldIsolateProtectedObjectsInUnitOfWork, shouldLockForClone, shouldOnlyRefreshCacheIfNewerVersion, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseAdditionalJoinExpression, shouldUseCacheIdentityMap, shouldUseFullChangeSetsForNewObjects, shouldUseFullIdentityMap, shouldUseHardCacheWeakIdentityMap, shouldUseNoIdentityMap, shouldUseRemoteCacheIdentityMap, shouldUseRemoteFullIdentityMap, shouldUseRemoteHardCacheWeakIdentityMap, shouldUseRemoteNoIdentityMap, shouldUseRemoteSoftCacheWeakIdentityMap, shouldUseRemoteSoftIdentityMap, shouldUseRemoteWeakIdentityMap, shouldUseSessionCacheInUnitOfWorkEarlyTransaction, shouldUseSoftCacheWeakIdentityMap, shouldUseSoftIdentityMap, shouldUseWeakIdentityMap, supportsChangeTracking, toggleAdditionalTablePrimaryKeyFields, toString, useAllFieldsLocking, useCacheIdentityMap, useChangedFieldsLocking, useCloneCopyPolicy, useCloneCopyPolicy, useDefaultConstructorInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFullIdentityMap, useHardCacheWeakIdentityMap, useInstantiationCopyPolicy, useMethodInstantiationPolicy, useNoIdentityMap, usePropertyAccessForWeaving, useRemoteCacheIdentityMap, useRemoteFullIdentityMap, useRemoteHardCacheWeakIdentityMap, useRemoteNoIdentityMap, useRemoteSoftCacheWeakIdentityMap, useRemoteSoftIdentityMap, useRemoteWeakIdentityMap, useSelectedFieldsLocking, usesFieldLocking, useSoftCacheWeakIdentityMap, useSoftIdentityMap, usesOptimisticLocking, usesPropertyAccessForWeaving, usesSequenceNumbers, usesVersionLocking, useTimestampLocking, useTimestampLocking, useVersionLocking, useVersionLocking, useWeakIdentityMap, validateAfterInitialization, validateBeforeInitialization, verifyMultipleTableInsertOrder, verifyMultipleTablesForeignKeysTables, verifyTableQualifiersaddAttributeGroupprotected java.lang.String structureName
protected java.util.Vector orderedFields
protected java.util.Vector allOrderedFields
public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DescriptorException
initialize in class ClassDescriptorDescriptorExceptionpublic void addFieldOrdering(java.lang.String fieldName)
fieldName - the name of the field to add ordering on.public java.util.Vector buildDirectValuesFromFieldValue(java.lang.Object fieldValue)
throws DatabaseException
buildDirectValuesFromFieldValue in class ClassDescriptorDatabaseExceptionpublic java.lang.Object buildFieldValueFromDirectValues(java.util.Vector directValues,
java.lang.String elementDataTypeName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DatabaseException
buildFieldValueFromDirectValues in class ClassDescriptorDatabaseExceptionpublic java.lang.Object buildFieldValueFromNestedRow(org.eclipse.persistence.internal.sessions.AbstractRecord nestedRow,
org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DatabaseException
buildFieldValueFromNestedRow in class ClassDescriptorDatabaseExceptionpublic java.lang.Object buildFieldValueFromNestedRows(java.util.Vector nestedRows,
java.lang.String structureName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DatabaseException
buildFieldValueFromNestedRows in class ClassDescriptorDatabaseExceptionpublic static java.lang.Object buildContainerFromArray(java.sql.Array fieldValue,
ObjectRelationalDatabaseField arrayField,
org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DatabaseException
DatabaseExceptionpublic org.eclipse.persistence.internal.sessions.AbstractRecord buildNestedRowFromFieldValue(java.lang.Object fieldValue)
throws DatabaseException
buildNestedRowFromFieldValue in class ClassDescriptorDatabaseExceptionpublic java.util.Vector buildNestedRowsFromFieldValue(java.lang.Object fieldValue,
org.eclipse.persistence.internal.sessions.AbstractSession session)
throws DatabaseException
buildNestedRowsFromFieldValue in class ClassDescriptorDatabaseExceptionpublic org.eclipse.persistence.internal.sessions.AbstractRecord buildRowFromStructure(java.sql.Struct structure)
throws DatabaseException
DatabaseExceptionpublic java.sql.Struct buildStructureFromRow(org.eclipse.persistence.internal.sessions.AbstractRecord row,
org.eclipse.persistence.internal.sessions.AbstractSession session,
java.sql.Connection connection)
throws DatabaseException
DatabaseExceptionpublic static java.lang.Object buildArrayObjectFromArray(java.lang.Object array)
throws DatabaseException
DatabaseExceptionpublic static java.lang.Object buildArrayObjectFromStruct(java.lang.Object structure)
throws DatabaseException
DatabaseExceptionprotected org.eclipse.persistence.internal.helper.DatabaseTable extractDefaultTable()
extractDefaultTable in class ClassDescriptorpublic java.util.Vector getOrderedFields()
public java.sql.Ref getRef(java.lang.Object object,
org.eclipse.persistence.internal.sessions.AbstractSession session)
public java.lang.String getStructureName()
public boolean isObjectRelationalDataTypeDescriptor()
isObjectRelationalDataTypeDescriptor in class ClassDescriptorpublic boolean requiresInitialization(org.eclipse.persistence.internal.sessions.AbstractSession session)
requiresInitialization in class ClassDescriptorprotected void validateMappingType(DatabaseMapping mapping)
validateMappingType in class ClassDescriptorpublic void setOrderedFields(java.util.Vector orderedFields)
public void setStructureName(java.lang.String structureName)