EclipseLink 1.2.0, build 'v20091016-r5565' API Reference

org.eclipse.persistence.eis
Class EISDescriptor

java.lang.Object
  extended by org.eclipse.persistence.descriptors.ClassDescriptor
      extended by org.eclipse.persistence.eis.EISDescriptor
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class EISDescriptor
extends ClassDescriptor

An EISDescriptor defines the mapping from a JCA data structure to a Java object. There are two types of EIS descriptors:

See Also:
EISInteraction, EISMapping, Serialized Form
Author:
James
Since:
OracleAS TopLink 10g (10.0.3)

Field Summary
protected  java.lang.String dataFormat
          Define the type of data the descriptor maps to.
static java.lang.String INDEXED
           
static java.lang.String MAPPED
          Define the valid data formats that the descriptor can map to.
protected  NamespaceResolver namespaceResolver
          Allow namespaces to be specified for XML type descriptors.
static java.lang.String XML
           
 
Fields inherited from class org.eclipse.persistence.descriptors.ClassDescriptor
additionalAggregateCollectionKeyFields, additionalTablePrimaryKeyFields, AGGREGATE, AGGREGATE_COLLECTION, alias, allFields, amendmentClass, amendmentClassName, amendmentMethodName, cacheInterceptorClass, cacheInterceptorClassName, cacheInvalidationPolicy, cacheSynchronizationType, cascadeLockingPolicies, changePolicy, cmpPolicy, constraintDependencies, copyPolicy, copyPolicyClassName, defaultDeleteObjectQueryRedirector, defaultDeleteObjectQueryRedirectorClassName, defaultInsertObjectQueryRedirector, defaultInsertObjectQueryRedirectorClassName, defaultQueryRedirector, defaultQueryRedirectorClassName, defaultReadAllQueryRedirector, defaultReadAllQueryRedirectorClassName, defaultReadObjectQueryRedirector, defaultReadObjectQueryRedirectorClassName, defaultReportQueryRedirector, defaultReportQueryRedirectorClassName, defaultTable, defaultUpdateObjectQueryRedirector, defaultUpdateObjectQueryRedirectorClassName, descriptorType, DO_NOT_SEND_CHANGES, ERROR, eventManager, fetchGroupManager, fields, hasDerivedId, hasSimplePrimaryKey, historyPolicy, identityMapClass, identityMapSize, idValidation, inheritancePolicy, initializationStage, INITIALIZED, instantiationPolicy, INTERFACE, interfaceInitializationStage, interfacePolicy, INVALIDATE_CHANGED_OBJECTS, isIsolated, isNativeConnectionRequired, ISOLATE_CACHE_AFTER_TRANSACTION, ISOLATE_CACHE_ALWAYS, ISOLATE_NEW_DATA_AFTER_TRANSACTION, javaClass, javaClassName, lockableMappings, mappings, mappingsPostCalculateChanges, mappingsPostCalculateChangesOnDeleted, multipleTableForeignKeys, multipleTableInsertOrder, NORMAL, objectBuilder, optimisticLockingPolicy, POST_INITIALIZED, preDeleteMappings, PREINITIALIZED, primaryKeyFields, properties, queryKeys, queryManager, remoteIdentityMapClass, remoteIdentityMapSize, returningPolicy, SEND_NEW_OBJECTS_WITH_CHANGES, SEND_OBJECT_CHANGES, sequence, sequenceNumberField, sequenceNumberName, sessionName, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldAlwaysRefreshCache, shouldAlwaysRefreshCacheOnRemote, shouldBeReadOnly, shouldDisableCacheHits, shouldDisableCacheHitsOnRemote, shouldOnlyRefreshCacheIfNewerVersion, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseFullChangeSetsForNewObjects, tables, UNDEFINED_ISOLATATION, UNDEFINED_OBJECT_CHANGE_BEHAVIOR, UNINITIALIZED, unitOfWorkCacheIsolationLevel, USE_SESSION_CACHE_AFTER_TRANSACTION, wrapperPolicy
 
Constructor Summary
EISDescriptor()
          Default constructor.
 
Method Summary
 DatabaseMapping addDirectMapping(java.lang.String attributeName, java.lang.String fieldName)
          PUBLIC: Add a direct mapping to the receiver.
 DatabaseMapping addDirectMapping(java.lang.String attributeName, java.lang.String getMethodName, java.lang.String setMethodName, java.lang.String fieldName)
          PUBLIC: Add a direct to node mapping to the receiver.
 void addPrimaryKeyFieldName(java.lang.String fieldName)
          PUBLIC: Specify the primary key field.
 org.eclipse.persistence.internal.databaseaccess.DatabaseCall buildCallFromStatement(org.eclipse.persistence.internal.expressions.SQLStatement statement, org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: Override this method to throw an exception.
 java.util.Vector buildDirectValuesFromFieldValue(java.lang.Object fieldValue)
          INTERNAL: Extract the direct values from the specified field value.
 org.eclipse.persistence.internal.helper.DatabaseField buildField(org.eclipse.persistence.internal.helper.DatabaseField field)
          INTERNAL: If the field is an XMLField then set the namespace resolver from the descriptor.
 org.eclipse.persistence.internal.helper.DatabaseField buildField(java.lang.String fieldName)
          INTERNAL: XML type descriptors should use XMLFields.
 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 the nested row.
 java.util.Vector buildNestedRowsFromFieldValue(java.lang.Object fieldValue, org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: Build the nested rows.
protected  org.eclipse.persistence.internal.helper.DatabaseTable extractDefaultTable()
          Aggregates use a dummy table as default.
 java.lang.String getDataFormat()
          PUBLIC: Return the data format that the descriptor maps to.
 java.lang.String getDataTypeName()
          PUBLIC: Specify the data type name for the class of objects the descriptor maps.
 InheritancePolicy getInheritancePolicy()
          PUBLIC: The inheritance policy is used to define how a descriptor takes part in inheritance.
 NamespaceResolver getNamespaceResolver()
          PUBLIC: Return the XML namespace resolver.
 void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: Initialize the mappings as a separate step.
 void initializeAggregateInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: This is needed by regular aggregate descriptors * but not by EIS aggregate descriptors.
 boolean isReturnTypeRequiredForReturningPolicy()
          INTERNAL: Indicates if a return type is required for the field set on the returning policy.
 void preInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: Configure the object builder for the correct dataFormat.
 boolean requiresInitialization()
          INTERNAL: XML descriptors are initialized normally, since they do not need to be cloned by ESI aggregate mappings.
 void setDataFormat(java.lang.String dataFormat)
          PUBLIC: Configure the data format that the descriptor maps to.
 void setDataTypeName(java.lang.String dataTypeName)
          PUBLIC: Specify the data type name for the class of objects the descriptor maps.
 void setNamespaceResolver(NamespaceResolver namespaceResolver)
          PUBLIC: Set the XML namespace resolver.
 void setQueryManager(DescriptorQueryManager queryManager)
          INTERNAL: Avoid SDK initialization.
 void setSequenceNumberFieldName(java.lang.String fieldName)
          PUBLIC: Set the sequence number field name.
 boolean shouldUseFullChangeSetsForNewObjects()
          INTERNAL: Return if change sets are required for new objects.
 void useIndexedRecordFormat()
          PUBLIC: Configure the data format to use indexed records.
 void useMappedRecordFormat()
          PUBLIC: Configure the data format to use mapped records.
 void useXMLRecordFormat()
          PUBLIC: Configure the data format to use xml records.
protected  void validateMappingType(DatabaseMapping mapping)
           
 
Methods inherited from class org.eclipse.persistence.descriptors.ClassDescriptor
addAbstractQueryKey, addCascadeLockingPolicy, addConstraintDependencies, addConstraintDependency, addDirectQueryKey, addForeignKeyFieldForMultipleTable, addForeignKeyFieldNameForMultipleTable, addMapping, addMappingsPostCalculateChanges, addMappingsPostCalculateChangesOnDeleted, addPrimaryKeyField, addQueryKey, addTable, addTableName, adjustMultipleTableInsertOrder, alwaysConformResultsInUnitOfWork, alwaysRefreshCache, alwaysRefreshCacheOnRemote, applyAmendmentMethod, applyAmendmentMethod, arePrimaryKeyFields, assignDefaultValues, buildField, buildFieldValueFromForeignKeys, checkDatabase, checkInheritanceTreeAggregateSettings, clone, convertClassNamesToClasses, createCopyPolicy, createInstantiationPolicy, createMultipleTableInsertOrder, createMultipleTableInsertOrderFromComparison, createTableComparison, createTableOrder, descriptorIsAggregate, descriptorIsAggregateCollection, descriptorIsForInterface, descriptorIsNormal, disableCacheHits, disableCacheHitsOnRemote, dontAlwaysConformResultsInUnitOfWork, dontAlwaysRefreshCache, dontAlwaysRefreshCacheOnRemote, dontDisableCacheHits, dontDisableCacheHitsOnRemote, dontOnlyRefreshCacheIfNewerVersion, getAdditionalAggregateCollectionKeyFields, getAdditionalTablePrimaryKeyFields, getAlias, getAllFields, getAmendmentClass, getAmendmentClassName, getAmendmentMethodName, getCacheInterceptorClass, getCacheInterceptorClassName, getCacheInvalidationPolicy, getCacheSynchronizationType, getCascadeLockingPolicies, getCMPPolicy, getConstraintDependencies, getCopyPolicy, getCopyPolicyClassName, getDefaultDeleteObjectQueryRedirector, getDefaultFetchGroup, getDefaultInsertObjectQueryRedirector, getDefaultQueryRedirector, getDefaultReadAllQueryRedirector, getDefaultReadObjectQueryRedirector, getDefaultReportQueryRedirector, getDefaultTable, getDefaultUpdateObjectQueryRedirector, getDescriptorEventManager, getDescriptorInheritancePolicy, getDescriptorQueryManager, getDescriptorType, getDescriptorTypeValue, getEventManager, getFetchGroupManager, getFields, getHistoryPolicy, getIdentityMapClass, getIdentityMapSize, getIdValidation, getInheritancePolicyOrNull, getInstantiationPolicy, getInterfacePolicy, getInterfacePolicyOrNull, getJavaClass, getJavaClassName, getLockableMappings, getMappingForAttributeName, getMappings, getMappingsPostCalculateChanges, getMappingsPostCalculateChangesOnDeleted, getMultipleTableForeignKeyAssociations, getMultipleTableForeignKeys, getMultipleTableInsertOrder, getMultipleTablePrimaryKeyAssociations, getObjectBuilder, getObjectChangePolicy, getObjectChangePolicyInternal, getOptimisticLockingPolicy, getPreDeleteMappings, getPrimaryKeyFieldNames, getPrimaryKeyFields, getProperties, getProperty, getQueryKeyNamed, getQueryKeys, getQueryManager, getRemoteIdentityMapClass, getRemoteIdentityMapSize, getReturningPolicy, getRootDescriptor, getSequence, getSequenceNumberField, getSequenceNumberFieldName, getSequenceNumberName, getSessionName, getTable, getTableName, getTableNames, getTablePerClassPolicy, getTables, getTypedField, getUnitOfWorkCacheIsolationLevel, getWrapperPolicy, hasCascadeLockingPolicies, hasCMPPolicy, hasDependencyOnParts, hasDerivedId, hasFetchGroupManager, hasInheritance, hasInterfacePolicy, hasMappingsPostCalculateChanges, hasMappingsPostCalculateChangesOnDeleted, hasMultipleTables, hasPessimisticLockingPolicy, hasPreDeleteMappings, hasPrivatelyOwnedParts, hasQueryKeyOrMapping, hasReturningPolicy, hasSimplePrimaryKey, hasTablePerClassPolicy, hasWrapperPolicy, initializeMultipleTablePrimaryKeyFields, initializeProperties, interfaceInitialization, isAbstract, isAggregateCollectionDescriptor, isAggregateDescriptor, isChildDescriptor, isDescriptorForCMP, isDescriptorForInterface, isDescriptorTypeAggregate, isDescriptorTypeNormal, isFullyInitialized, isInitialized, isInterfaceChildDescriptor, isInterfaceInitialized, isInvalid, isIsolated, isMultipleTableDescriptor, isNativeConnectionRequired, isObjectRelationalDataTypeDescriptor, isPrimaryKeySetAfterInsert, onlyRefreshCacheIfNewerVersion, postInitialize, preInitializeInheritancePolicy, preInterfaceInitialization, prepareCascadeLockingPolicy, rehashFieldDependancies, reInitializeJoinedAttributes, remoteInitialization, removeMappingForAttributeName, removeProperty, selfValidationAfterInitialization, selfValidationBeforeInitialization, setAdditionalTablePrimaryKeyFields, setAdditionalTablePrimaryKeyFields, setAlias, setAllFields, setAmendmentClass, setAmendmentClassName, setAmendmentMethodName, setCacheInterceptorClass, setCacheInterceptorClassName, setCacheInvalidationPolicy, setCacheSynchronizationType, setCMPPolicy, setConstraintDependencies, setCopyPolicy, setCopyPolicyClassName, setDefaultDeleteObjectQueryRedirector, setDefaultDeleteObjectQueryRedirectorClassName, setDefaultInsertObjectQueryRedirector, setDefaultInsertObjectQueryRedirectorClassName, setDefaultQueryRedirector, setDefaultQueryRedirectorClassName, setDefaultReadAllQueryRedirector, setDefaultReadAllQueryRedirectorClassName, setDefaultReadObjectQueryRedirector, setDefaultReadObjectQueryRedirectorClassName, setDefaultReportQueryRedirector, setDefaultReportQueryRedirectorClassName, setDefaultTable, setDefaultTableName, setDefaultUpdateObjectQueryRedirector, setDefaultUpdateObjectQueryRedirectorClassName, setDescriptorType, setDescriptorTypeValue, setEventManager, setExistenceChecking, setFetchGroupManager, setFields, setForeignKeyFieldNamesForMultipleTable, setHasSimplePrimaryKey, setHistoryPolicy, setIdentityMapClass, setIdentityMapSize, setIdValidation, setInheritancePolicy, setInitializationStage, setInstantiationPolicy, setInterfaceInitializationStage, setInterfacePolicy, setInternalDefaultTable, setInternalDefaultTable, setIsIsolated, setIsNativeConnectionRequired, setJavaClass, setJavaClassName, setJavaInterface, setJavaInterfaceName, setLockableMappings, setMappings, setMultipleTableForeignKeys, setMultipleTableInsertOrder, setObjectBuilder, setObjectChangePolicy, setOptimisticLockingPolicy, setPrimaryKeyFieldName, setPrimaryKeyFieldNames, setPrimaryKeyFields, setProperties, setProperty, setQueryKeys, setReadOnly, setRemoteIdentityMapClass, setRemoteIdentityMapSize, setReturningPolicy, setSequence, setSequenceNumberField, setSequenceNumberName, setSessionName, setShouldAcquireCascadedLocks, setShouldAlwaysConformResultsInUnitOfWork, setShouldAlwaysRefreshCache, setShouldAlwaysRefreshCacheOnRemote, setShouldBeReadOnly, setShouldDisableCacheHits, setShouldDisableCacheHitsOnRemote, setShouldOnlyRefreshCacheIfNewerVersion, setShouldOrderMappings, setShouldRegisterResultsInUnitOfWork, setTableName, setTableNames, setTablePerClassPolicy, setTableQualifier, setTables, setUnitOfWorkCacheIsolationLevel, setWrapperPolicy, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldAlwaysRefreshCache, shouldAlwaysRefreshCacheOnRemote, shouldBeReadOnly, shouldDisableCacheHits, shouldDisableCacheHitsOnRemote, shouldIsolateObjectsInUnitOfWork, shouldIsolateObjectsInUnitOfWorkEarlyTransaction, shouldOnlyRefreshCacheIfNewerVersion, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseCacheIdentityMap, 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, useRemoteCacheIdentityMap, useRemoteFullIdentityMap, useRemoteHardCacheWeakIdentityMap, useRemoteNoIdentityMap, useRemoteSoftCacheWeakIdentityMap, useRemoteSoftIdentityMap, useRemoteWeakIdentityMap, useSelectedFieldsLocking, usesFieldLocking, useSoftCacheWeakIdentityMap, useSoftIdentityMap, usesOptimisticLocking, usesSequenceNumbers, usesVersionLocking, useTimestampLocking, useTimestampLocking, useVersionLocking, useVersionLocking, useWeakIdentityMap, validateAfterInitialization, validateBeforeInitialization, verifyMultipleTableInsertOrder, verifyMultipleTablesForeignKeysTables, verifyTableQualifiers
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

dataFormat

protected java.lang.String dataFormat
Define the type of data the descriptor maps to.


MAPPED

public static final java.lang.String MAPPED
Define the valid data formats that the descriptor can map to.

See Also:
Constant Field Values

INDEXED

public static final java.lang.String INDEXED
See Also:
Constant Field Values

XML

public static final java.lang.String XML
See Also:
Constant Field Values

namespaceResolver

protected NamespaceResolver namespaceResolver
Allow namespaces to be specified for XML type descriptors.

Constructor Detail

EISDescriptor

public EISDescriptor()
Default constructor.

Method Detail

validateMappingType

protected void validateMappingType(DatabaseMapping mapping)
Overrides:
validateMappingType in class ClassDescriptor

setDataTypeName

public void setDataTypeName(java.lang.String dataTypeName)
                     throws DescriptorException
PUBLIC: Specify the data type name for the class of objects the descriptor maps. This may be the XML schema complex type name, or the JCA record name for the type being mapped.

Throws:
DescriptorException

getNamespaceResolver

public NamespaceResolver getNamespaceResolver()
PUBLIC: Return the XML namespace resolver. XML type EIS descriptor can use a namespace resolver to support XML schema namespaces.


getInheritancePolicy

public InheritancePolicy getInheritancePolicy()
PUBLIC: The inheritance policy is used to define how a descriptor takes part in inheritance. All inheritance properties for both child and parent classes is configured in inheritance policy. Caution must be used in using this method as it lazy initializes an inheritance policy. Calling this on a descriptor that does not use inheritance will cause problems, #hasInheritance() must always first be called.

Overrides:
getInheritancePolicy in class ClassDescriptor

setNamespaceResolver

public void setNamespaceResolver(NamespaceResolver namespaceResolver)
PUBLIC: Set the XML namespace resolver. XML type EIS descriptor can use a namespace resolver to support XML schema namespaces.


setQueryManager

public void setQueryManager(DescriptorQueryManager queryManager)
INTERNAL: Avoid SDK initialization.

Overrides:
setQueryManager in class ClassDescriptor

preInitialize

public void preInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Configure the object builder for the correct dataFormat.

Overrides:
preInitialize in class ClassDescriptor

getDataFormat

public java.lang.String getDataFormat()
PUBLIC: Return the data format that the descriptor maps to.


getDataTypeName

public java.lang.String getDataTypeName()
                                 throws DescriptorException
PUBLIC: Specify the data type name for the class of objects the descriptor maps. This may be the XML schema complex type name, or the JCA record name for the type being mapped.

Throws:
DescriptorException

setDataFormat

public void setDataFormat(java.lang.String dataFormat)
PUBLIC: Configure the data format that the descriptor maps to.


useMappedRecordFormat

public void useMappedRecordFormat()
PUBLIC: Configure the data format to use mapped records.


useIndexedRecordFormat

public void useIndexedRecordFormat()
PUBLIC: Configure the data format to use indexed records.


useXMLRecordFormat

public void useXMLRecordFormat()
PUBLIC: Configure the data format to use xml records.


buildNestedRowFromFieldValue

public org.eclipse.persistence.internal.sessions.AbstractRecord buildNestedRowFromFieldValue(java.lang.Object fieldValue)
INTERNAL: Build the nested row.

Overrides:
buildNestedRowFromFieldValue in class ClassDescriptor

buildNestedRowsFromFieldValue

public java.util.Vector buildNestedRowsFromFieldValue(java.lang.Object fieldValue,
                                                      org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Build the nested rows.

Overrides:
buildNestedRowsFromFieldValue in class ClassDescriptor

buildDirectValuesFromFieldValue

public java.util.Vector buildDirectValuesFromFieldValue(java.lang.Object fieldValue)
INTERNAL: Extract the direct values from the specified field value. Return them in a vector. The field value could be a vector or could be a text value if only a single value.

Overrides:
buildDirectValuesFromFieldValue in class ClassDescriptor

buildFieldValueFromDirectValues

public 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. The database better be expecting a Vector.

Overrides:
buildFieldValueFromDirectValues in class ClassDescriptor

buildFieldValueFromNestedRow

public java.lang.Object buildFieldValueFromNestedRow(org.eclipse.persistence.internal.sessions.AbstractRecord nestedRow,
                                                     org.eclipse.persistence.internal.sessions.AbstractSession session)
                                              throws DatabaseException
INTERNAL: Build and return the field value from the specified nested database row. The database better be expecting an SDKFieldValue.

Overrides:
buildFieldValueFromNestedRow in class ClassDescriptor
Throws:
DatabaseException

buildFieldValueFromNestedRows

public java.lang.Object buildFieldValueFromNestedRows(java.util.Vector nestedRows,
                                                      java.lang.String structureName,
                                                      org.eclipse.persistence.internal.sessions.AbstractSession session)
                                               throws DatabaseException
INTERNAL: Build and return the appropriate field value for the specified set of nested rows.

Overrides:
buildFieldValueFromNestedRows in class ClassDescriptor
Throws:
DatabaseException

buildField

public org.eclipse.persistence.internal.helper.DatabaseField buildField(java.lang.String fieldName)
INTERNAL: XML type descriptors should use XMLFields.

Overrides:
buildField in class ClassDescriptor

buildField

public org.eclipse.persistence.internal.helper.DatabaseField buildField(org.eclipse.persistence.internal.helper.DatabaseField field)
INTERNAL: If the field is an XMLField then set the namespace resolver from the descriptor. This allows the resolver to only be set in the descriptor.

Overrides:
buildField in class ClassDescriptor

addDirectMapping

public DatabaseMapping addDirectMapping(java.lang.String attributeName,
                                        java.lang.String fieldName)
PUBLIC: Add a direct mapping to the receiver. The new mapping specifies that an instance variable of the class of objects which the receiver describes maps in the default manner for its type to the indicated database field.

Overrides:
addDirectMapping in class ClassDescriptor
Parameters:
String - instanceVariableName is the name of an instance variable of the class which the receiver describes.
String - fieldName is the name of the xml element or attribute which corresponds with the designated instance variable.
Returns:
The newly created DatabaseMapping is returned.

addDirectMapping

public DatabaseMapping addDirectMapping(java.lang.String attributeName,
                                        java.lang.String getMethodName,
                                        java.lang.String setMethodName,
                                        java.lang.String fieldName)
PUBLIC: Add a direct to node mapping to the receiver. The new mapping specifies that a variable accessed by the get and set methods of the class of objects which the receiver describes maps in the default manner for its type to the indicated database field.

Overrides:
addDirectMapping in class ClassDescriptor

addPrimaryKeyFieldName

public void addPrimaryKeyFieldName(java.lang.String fieldName)
PUBLIC: Specify the primary key field. This should be called for each field that make up the primary key. For EIS XML Descriptors use the addPrimaryKeyField(DatabaseField) API and supply an org.eclipse.persistence.oxm.XMLField parameter instead of using this method

Overrides:
addPrimaryKeyFieldName in class ClassDescriptor
See Also:
#addMultipleTableForeignKeyFieldName(String, String);

setSequenceNumberFieldName

public void setSequenceNumberFieldName(java.lang.String fieldName)
PUBLIC: Set the sequence number field name. This is the field in the descriptors table that needs its value to be generated. This is normally the primary key field of the descriptor. For EIS XML Descriptors use the setSequenceNumberFieldName(DatabaseField) API and supply an org.eclipse.persistence.oxm.XMLField parameter instead of using this method

Overrides:
setSequenceNumberFieldName in class ClassDescriptor

buildCallFromStatement

public org.eclipse.persistence.internal.databaseaccess.DatabaseCall buildCallFromStatement(org.eclipse.persistence.internal.expressions.SQLStatement statement,
                                                                                           org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Override this method to throw an exception. SQL should not be generated for EIS Calls.

Overrides:
buildCallFromStatement in class ClassDescriptor

initialize

public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
                throws DescriptorException
Description copied from class: ClassDescriptor
INTERNAL: Initialize the mappings as a separate step. This is done as a separate step to ensure that inheritance has been first resolved.

Overrides:
initialize in class ClassDescriptor
Throws:
DescriptorException

initializeAggregateInheritancePolicy

public void initializeAggregateInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: This is needed by regular aggregate descriptors * but not by EIS aggregate descriptors.

Overrides:
initializeAggregateInheritancePolicy in class ClassDescriptor

requiresInitialization

public boolean requiresInitialization()
INTERNAL: XML descriptors are initialized normally, since they do not need to be cloned by ESI aggregate mappings.

Overrides:
requiresInitialization in class ClassDescriptor

extractDefaultTable

protected org.eclipse.persistence.internal.helper.DatabaseTable extractDefaultTable()
Aggregates use a dummy table as default.

Overrides:
extractDefaultTable in class ClassDescriptor

isReturnTypeRequiredForReturningPolicy

public boolean isReturnTypeRequiredForReturningPolicy()
INTERNAL: Indicates if a return type is required for the field set on the returning policy. For EIS descriptors, this should always return false.

Overrides:
isReturnTypeRequiredForReturningPolicy in class ClassDescriptor

shouldUseFullChangeSetsForNewObjects

public boolean shouldUseFullChangeSetsForNewObjects()
INTERNAL: Return if change sets are required for new objects.

Overrides:
shouldUseFullChangeSetsForNewObjects in class ClassDescriptor

EclipseLink 1.2.0, build 'v20091016-r5565' API Reference