Top Description Fields Constructors Methods
org.eclipse.persistence.descriptors

public Class ClassDescriptor

extends CoreDescriptor<AttributeGroup, DescriptorEventManager, DatabaseField, InheritancePolicy, InstantiationPolicy, Vector<E>, ObjectBuilder>
implements Cloneable, Serializable
Class Inheritance
All Implemented Interfaces
java.io.Serializable, java.lang.Cloneable
Known Direct Subclasses
org.eclipse.persistence.descriptors.RelationalDescriptor, org.eclipse.persistence.eis.EISDescriptor, org.eclipse.persistence.oxm.XMLDescriptor
Imports
java.io.Serializable, java.lang.reflect.Method, java.util.ArrayList, .Arrays, .Collection, .Enumeration, .HashMap, .HashSet, .Iterator, .List, .Map, .Set, .Vector, org.eclipse.persistence.annotations.CacheKeyType, .IdValidation, org.eclipse.persistence.config.CacheIsolationType, org.eclipse.persistence.core.descriptors.CoreDescriptor, org.eclipse.persistence.descriptors.changetracking.AttributeChangeTrackingPolicy, .ChangeTracker, .DeferredChangeDetectionPolicy, .ObjectChangePolicy, org.eclipse.persistence.descriptors.copying.CloneCopyPolicy, .CopyPolicy, .InstantiationCopyPolicy, .PersistenceEntityCopyPolicy, org.eclipse.persistence.descriptors.invalidation.CacheInvalidationPolicy, .NoExpiryCacheInvalidationPolicy, org.eclipse.persistence.descriptors.partitioning.PartitioningPolicy, org.eclipse.persistence.exceptions.DatabaseException, .DescriptorException, .ValidationException, org.eclipse.persistence.expressions.Expression, .ExpressionBuilder, org.eclipse.persistence.history.HistoryPolicy, org.eclipse.persistence.internal.databaseaccess.DatabaseCall, .DatasourceCall, .Platform, org.eclipse.persistence.internal.descriptors.CascadeLockingPolicy, .InstantiationPolicy, .ObjectBuilder, .OptimisticLockingPolicy, .PersistenceObject, .PersistenceObjectAttributeAccessor, .PersistenceObjectInstantiationPolicy, .SerializedObjectPolicyWrapper, .VirtualAttributeMethodInfo, org.eclipse.persistence.internal.dynamic.DynamicEntityImpl, org.eclipse.persistence.internal.expressions.SQLSelectStatement, .SQLStatement, org.eclipse.persistence.internal.helper.ClassConstants, .ConversionManager, .DatabaseField, .DatabaseTable, .Helper, .MappingCompare, .NonSynchronizedVector, org.eclipse.persistence.internal.identitymaps.IdentityMap, org.eclipse.persistence.internal.indirection.ProxyIndirectionPolicy, org.eclipse.persistence.internal.security.PrivilegedAccessHelper, org.eclipse.persistence.internal.sessions.AbstractRecord, .AbstractSession, org.eclipse.persistence.internal.weaving.PersistenceWeavedChangeTracking, org.eclipse.persistence.mappings.AggregateCollectionMapping, .AggregateMapping, .AggregateObjectMapping, .Association, .AttributeAccessor, .CollectionMapping, .DatabaseMapping, .DirectCollectionMapping, .DirectToFieldMapping, .ForeignReferenceMapping, .ManyToManyMapping, .ManyToOneMapping, .ObjectReferenceMapping, .OneToManyMapping, .OneToOneMapping, .UnidirectionalOneToManyMapping, org.eclipse.persistence.mappings.foundation.AbstractDirectMapping, org.eclipse.persistence.mappings.querykeys.DirectQueryKey, .QueryKey, org.eclipse.persistence.queries.AttributeGroup, .DatabaseQuery, .DeleteObjectQuery, .FetchGroup, .FetchGroupTracker, .InsertObjectQuery, .ObjectLevelReadQuery, .QueryRedirector, .ReadObjectQuery, org.eclipse.persistence.sequencing.Sequence, org.eclipse.persistence.sessions.DatabaseRecord, .Project, org.eclipse.persistence.sessions.interceptors.CacheInterceptor, org.eclipse.persistence.sessions.remote.DistributedSession

Purpose: Abstract descriptor class for defining persistence information on a class. This class provides the data independent behavior and is subclassed, for relational, object-relational, EIS, XML, etc.

See Also
RelationalDescriptor, org.eclipse.persistence.mappings.structures.ObjectRelationalDataTypeDescriptor, org.eclipse.persistence.eis.EISDescriptor, org.eclipse.persistence.oxm.XMLDescriptor

Field Summary

Modifier and TypeField and Description
protected List<AttributeAccessor>
accessorTree

A list of AttributeAccessors in order of access from root to leaf to arrive at current AggregateDescriptor.

protected transient List<DatabaseField>
additionalAggregateCollectionKeyFields

used by aggregate descriptors to hold additional fields needed when they are stored in an AggregatateCollection These fields are generally foreign key fields that are required in addition to the fields in the descriptor's mappings to uniquely identify the Aggregate

protected Map<DatabaseTable, Map<DatabaseField, DatabaseField>>
protected transient List<DatabaseField>
additionalWritableMapKeyFields

stores fields that are written by Map key mappings so they can be checked for multiple writable mappings

protected static final int
protected static final int
protected String
protected transient Vector<DatabaseField>
protected transient List<DatabaseField>
protected transient Class<?>
protected String
protected transient String
protected CacheInvalidationPolicy
protected CachePolicy
protected boolean
cascadedLockingInitialized

INTERNAL: flag to indicate the initialization state of cascade locking for this descriptor

protected transient List<CascadeLockingPolicy>
protected ObjectChangePolicy
protected CMPPolicy
protected transient Vector<E>
protected CopyPolicy
protected String
protected QueryRedirector
protected String
protected QueryRedirector
protected String
protected QueryRedirector
protected String
protected QueryRedirector
protected String
protected QueryRedirector
protected String
protected QueryRedirector
protected String
protected transient DatabaseTable
protected QueryRedirector
protected String
protected Map<String, DatabaseMapping>
protected String
descriptorCustomizerClassName

JPA DescriptorCustomizer list stored here to preserve it when caching the project

protected int
public static final int
protected static final int
protected FetchGroupManager
protected transient Vector<DatabaseField>
protected Set<DatabaseField>
foreignKeyValuesForCaching

Stores a set of FK fields that will be cached to later retrieve noncacheable mappings

protected boolean
hasMultipleTableConstraintDependecy

Defines if any mapping reference a field in a secondary table.

protected boolean
hasNoncacheableMappings

caches if this descriptor has any non cacheable mappings

protected boolean
hasRelationships

whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates

protected boolean
hasSimplePrimaryKey

PERF: Compute and store if the primary key is simple (direct-mapped) to allow fast extraction.

protected HistoryPolicy
protected IdValidation
idValidation

Allow zero primary key validation to be configured.

protected transient int
protected static final int
protected static final int
protected transient int
protected InterfacePolicy
public static final int
protected boolean
isCascadeOnDeleteSetOnDatabaseOnSecondaryTables

Support delete cascading on the database for multiple and inheritance tables.

protected boolean
isNativeConnectionRequired

Allow connection unwrapping to be configured.

public static final int
public static final int
public static final int
public static final int
protected Class<?>
protected String
protected List<DatabaseMapping>
protected Vector<DatabaseMapping>
protected List<DatabaseMapping>
mappingsPostCalculateChanges

Mappings that require postCalculateChanges method to be called

protected List<DatabaseMapping>
mappingsPostCalculateChangesOnDeleted

Mappings that require postCalculateChangesOnDeleted method to be called

protected Map<DatabaseTable, Set<DatabaseTable>>
protected transient List<DatabaseTable>
protected MultitenantPolicy
protected static final int
NORMAL

Define valid descriptor types.

protected OptimisticLockingPolicy
protected PartitioningPolicy
protected String
protected static final int
protected List<DatabaseMapping>
preDeleteMappings

stores a list of mappings that require preDelete as a group prior to the delete individually

protected static final int
protected List<DatabaseField>
protected List<IdValidation>
primaryKeyIdValidations

Allow zero primary key validation to be configured per field.

protected Map<K, V>
properties

Additional properties may be added.

protected Map<String, QueryKey>
protected DescriptorQueryManager
protected Set<ClassDescriptor>
protected transient Vector<DatabaseField>
protected transient Vector<DatabaseField>
protected transient List<DatabaseField>
protected transient List<DatabaseField>
protected List<ReturningPolicy>
protected ReturningPolicy
protected transient List<DatabaseField>
public static final int
public static final int
protected Sequence
sequence

Store the Sequence used for the descriptor.

protected DatabaseField
protected String
protected SerializedObjectPolicy
protected transient String
protected boolean
shouldAcquireCascadedLocks

PERF: Used to optimize cache locking to only acquire deferred locks when required (no-indirection).

protected boolean
protected boolean
protected boolean
shouldLockForClone

This flag controls if a UOW should acquire locks for clone or simple clone the instance passed to registerExistingObject.

protected boolean
protected boolean
public static boolean
shouldUseFullChangeSetsForNewObjects

INTERNAL: Backdoor for using changes sets for new objects.

protected Vector<DatabaseTable>
protected Map<String, List<String>>
unconvertedProperties

Allow the user to defined un-converted properties which will be initialized at runtime.

public static final int
public static final int
protected static final int
UNINITIALIZED

The following are the [initializationStage] states the descriptor passes through during the initialization.

public static final int
protected List<VirtualAttributeMethodInfo>
virtualAttributeMethods

A list of methods that are used by virtual mappings.

protected boolean
weavingUsesPropertyAccess

This flag stores whether this descriptor is using Property access based on JPA semantics.

protected WrapperPolicy
Inherited from org.eclipse.persistence.core.descriptors.CoreDescriptor:
attributeGroupseventManagerfieldinheritancePolicyinstantiationPolicyobjectBuilder

Constructor Summary

AccessConstructor and Description
public
ClassDescriptor()

PUBLIC: Return a new descriptor.

Method Summary

Modifier and TypeMethod and Description
public void
addAbstractQueryKey(String queryKeyName)

PUBLIC: This method should only be used for interface descriptors.

public void
addCascadeLockingPolicy(CascadeLockingPolicy
- the CascadeLockingPolicy
policy
)

INTERNAL: Add the cascade locking policy to all children that have a relationship to this descriptor either by inheritance or by encapsulation/aggregation.

public void
addConstraintDependencies(Class<?> dependencies)

ADVANCED: EclipseLink automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.

public void
addConstraintDependency(Class<?> dependencies)

ADVANCED: EclipseLink automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.

public DatabaseMapping

Returns:

The newly created DatabaseMapping is returned.
addDirectMapping
(String
is the name of an instance variable of the class which the receiver describes.
attributeName
,
String
is the name of the database column which corresponds with the designated instance variable.
fieldName
)

PUBLIC: Add a direct to field mapping to the receiver.

public DatabaseMapping
addDirectMapping(String attributeName, String getMethodName, String setMethodName, String fieldName)

PUBLIC: Add a direct to field mapping to the receiver.

public void
addDirectQueryKey(String queryKeyName, String fieldName)

PUBLIC: Add a query key to the descriptor.

public void
addForeignKeyFieldForMultipleTable(DatabaseField sourceForeignKeyField, DatabaseField targetPrimaryKeyField)

PUBLIC: This protocol can be used to associate multiple tables with foreign key information.

public void
addForeignKeyFieldNameForMultipleTable(String sourceForeignKeyFieldName, String targetPrimaryKeyFieldName)

PUBLIC: This protocol can be used to associate multiple tables with foreign key information.

public DatabaseMapping
addMapping(DatabaseMapping mapping)

PUBLIC: Add a database mapping to the receiver.

public void
addMappingsPostCalculateChanges(DatabaseMapping mapping)

Add a mapping to the list of mappings that require postCalculateChanges method to be called.

public void
addMappingsPostCalculateChangesOnDeleted(DatabaseMapping mapping)

Add a mapping to the list of mappings that require mappingsPostCalculateChangesOnDeleted method to be called.

public void
addPreDeleteMapping(DatabaseMapping mapping)

INTERNAL: Add the mapping to be notified before deletion.

public void
addPrimaryKeyField(DatabaseField field)

ADVANCED: Specify the primary key field of the descriptors table.

public void
addPrimaryKeyFieldName(String fieldName)

PUBLIC: Specify the primary key field of the descriptors table.

public void
addQueryKey(QueryKey queryKey)

PUBLIC: Add a query key to the descriptor.

public void
addTable(DatabaseTable table)

PUBLIC: Specify the table for the class of objects the receiver describes.

public void
addTableName(String tableName)

PUBLIC: Specify the table name for the class of objects the receiver describes.

public void
addUnconvertedProperty(String propertyName, String propertyValue, String propertyType)

PUBLIC: Add an unconverted property (to be initialiazed at runtime)

public void
adjustMultipleTableInsertOrder()

INTERNAL: Adjust the order of the tables in the multipleTableInsertOrder Vector according to the FK relationship if one (or more) were previously specified.

public void
alwaysConformResultsInUnitOfWork()

PUBLIC: Used to set the descriptor to always conform in any unit of work query.

public void
alwaysRefreshCache()

PUBLIC: This method is the equivalent of calling setShouldAlwaysRefreshCache with an argument of true: it configures a ClassDescriptor to always refresh the cache if data is received from the database by any query.

public void
alwaysRefreshCacheOnRemote()

PUBLIC: This method is the equivalent of calling setShouldAlwaysRefreshCacheOnRemote with an argument of true: it configures a ClassDescriptor to always remotely refresh the cache if data is received from the database by any query in a org.eclipse.persistence.sessions.remote.RemoteSession.

public void
applyAmendmentMethod()

ADVANCED: Call the descriptor amendment method.

public void
applyAmendmentMethod(DescriptorEvent event)

INTERNAL: Call the descriptor amendment method.

public boolean
arePrimaryKeyFields(Vector<E> fields)

INTERNAL: Used to determine if a foreign key references the primary key.

protected void
assignDefaultValues(AbstractSession session)

INTERNAL: Some attributes have default values defined in Project.

private void
public Expression
buildBatchCriteriaByPK(ExpressionBuilder builder, ObjectLevelReadQuery query)

INTERNAL: Return the selection criteria used to IN batch fetching.

public DatasourceCall
buildCallFromStatement(SQLStatement statement, DatabaseQuery query, AbstractSession session)

INTERNAL: Return a call built from a statement.

public Vector<E>
buildDirectValuesFromFieldValue(Object fieldValue)

INTERNAL: Extract the direct values from the specified field value.

public DatabaseField
buildField(String fieldName)

INTERNAL: A DatabaseField is built from the given field name.

public DatabaseField
buildField(DatabaseField field)

INTERNAL: The table of the field is ensured to be unique from the descriptor's tables.

public DatabaseField
buildField(DatabaseField field, DatabaseTable relationTable)

public Object
buildFieldValueFromDirectValues(Vector<E> directValues, String elementDataTypeName, AbstractSession session)

INTERNAL: Build the appropriate field value for the specified set of direct values.

public Object
buildFieldValueFromForeignKeys(Vector<E> foreignKeys, String referenceDataTypeName, AbstractSession session)

INTERNAL: Build and return the appropriate field value for the specified set of foreign keys (i.e. each row has the fields that make up a foreign key).

public Object
buildFieldValueFromNestedRow(AbstractRecord nestedRow, AbstractSession session)

INTERNAL: Build and return the field value from the specified nested database row.

public Object
buildFieldValueFromNestedRows(Vector<E> nestedRows, String structureName, AbstractSession session)

INTERNAL: Build and return the appropriate field value for the specified set of nested rows.

public AbstractRecord
buildNestedRowFromFieldValue(Object fieldValue)

INTERNAL: Build and return the nested database row from the specified field value.

public Vector<E>
buildNestedRowsFromFieldValue(Object fieldValue, AbstractSession session)

INTERNAL: Build and return the nested rows from the specified field value.

protected void
checkDatabase(AbstractSession session)

To check that tables and fields are present in database

public void
checkInheritanceTreeAggregateSettings(AbstractSession session, AggregateMapping mapping)

INTERNAL: Verify that an aggregate descriptor's inheritance tree is full of aggregate descriptors.

private void
checkInheritanceTreeAggregateSettingsForChildren(AbstractSession session, AggregateMapping mapping)

Verify that an aggregate descriptor's inheritance tree is full of aggregate descriptors, cont.

public void
clearReferencingClasses()

INTERNAL: Cleans referencingClasses set.

public Object
clone()

Overrides java.lang.Object.clone.

INTERNAL: Clones the descriptor
public void
convertClassNamesToClasses(ClassLoader classLoader)

INTERNAL: Convert all the class-name-based settings in this Descriptor to actual class-based settings.

public void
createCopyPolicy(String policyType)

PUBLIC: Create a copy policy of the type passed in as a string.

public void
createInstantiationPolicy(String policyType)

PUBLIC: Create a instantiation policy of the type passed in as a string.

protected void
createMultipleTableInsertOrder()

INTERNAL: Create multiple table insert order.

protected void
createMultipleTableInsertOrderFromComparison(int[][] tableComparison, int nStart)

INTERNAL: This helper method creates multipleTableInsertOrderFromComparison using comparison matrix created by createTableComparison(getTables()) method call.

protected int[][]
createTableComparison(List<DatabaseTable> tables, int nStart)

INTERNAL: This helper method creates a matrix that contains insertion order comparison for the tables.

protected boolean
createTableOrder(int k, int nTables, int[] tableOrder, int[][] tableComparison)

INTERNAL: This helper method recursively puts indexes from 0 to nTables-1 into tableOrder according to tableComparison 2 dim array.

public void
descriptorIsAggregate()

PUBLIC: Sets the descriptor to be an aggregate.

public void
descriptorIsAggregateCollection()

PUBLIC: Sets the descriptor to be part of an aggregate collection.

public void
descriptorIsForInterface()

PUBLIC: Sets the descriptor to be for an interface.

public void
descriptorIsNormal()

PUBLIC: Sets the descriptor to be normal.

public void
disableCacheHits()

PUBLIC: Allow for cache hits on primary key read object queries to be disabled.

public void
disableCacheHitsOnRemote()

PUBLIC: Allow for remote session cache hits on primary key read object queries to be disabled.

public void
dontAlwaysConformResultsInUnitOfWork()

PUBLIC: The descriptor is defined to not conform the results in unit of work in read query.

public void
dontAlwaysRefreshCache()

PUBLIC: This method is the equivalent of calling setShouldAlwaysRefreshCache with an argument of false: it ensures that a ClassDescriptor is not configured to always refresh the cache if data is received from the database by any query.

public void
dontAlwaysRefreshCacheOnRemote()

PUBLIC: This method is the equivalent of calling setShouldAlwaysRefreshCacheOnRemote with an argument of false: it ensures that a ClassDescriptor is not configured to always remotely refresh the cache if data is received from the database by any query in a org.eclipse.persistence.sessions.remote.RemoteSession.

public void
dontDisableCacheHits()

PUBLIC: Allow for cache hits on primary key read object queries.

public void
dontDisableCacheHitsOnRemote()

PUBLIC: Allow for remote session cache hits on primary key read object queries.

public void
dontOnlyRefreshCacheIfNewerVersion()

PUBLIC: This method is the equivalent of calling setShouldOnlyRefreshCacheIfNewerVersion with an argument of false: it ensures that a ClassDescriptor is not configured to only refresh the cache if the data received from the database by a query is newer than the data in the cache (as determined by the optimistic locking field).

protected DatabaseTable
extractDefaultTable()

INTERNAL: The first table in the tables is always treated as default.

public List<AttributeAccessor>

Returns:

the accessorTree
getAccessorTree
()

public List<DatabaseField>
getAdditionalAggregateCollectionKeyFields()

INTERNAL: additionalAggregateCollectionKeyFields are used by aggregate descriptors to hold additional fields needed when they are stored in an AggregatateCollection These fields are generally foreign key fields that are required in addition to the fields in the descriptor's mappings to uniquely identify the Aggregate

public Map<DatabaseTable, Map<DatabaseField, DatabaseField>>
getAdditionalTablePrimaryKeyFields()

INTERNAL: This is used to map the primary key field names in a multiple table descriptor.

public List<DatabaseField>
getAdditionalWritableMapKeyFields()

INTERNAL: Return a list of fields that are written by map keys Used to determine if there is a multiple writable mappings issue

public String
getAlias()

PUBLIC: Get the alias

public Vector<DatabaseField>
getAllFields()

INTERNAL: Return all the fields which include all child class fields.

public List<DatabaseField>
getAllSelectionFields()

INTERNAL: Return all selection fields which include all child class fields.

public List<DatabaseField>
getAllSelectionFields(ObjectLevelReadQuery query)

INTERNAL: Return all selection fields which include all child class fields.

public Class<?>
getAmendmentClass()

PUBLIC: Return the amendment class.

public String
getAmendmentClassName()

INTERNAL: Return amendment class name, used by the MW.

public String
getAmendmentMethodName()

PUBLIC: Return the amendment method.

public AttributeGroup
getAttributeGroup(String name)

Overrides org.eclipse.persistence.core.descriptors.CoreDescriptor.getAttributeGroup.

PUBLIC: Returns the attribute group corresponding to the name provided.
public Map<String, AttributeGroup>
getAttributeGroups()

Overrides org.eclipse.persistence.core.descriptors.CoreDescriptor.getAttributeGroups.

ADVANCED: Returns the attribute groups for this Descriptor.
public Class<? extends CacheInterceptor>
getCacheInterceptorClass()

A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction between EclipseLink and the internal cache for that class will pass through the Interceptor.

public String
getCacheInterceptorClassName()

A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction between EclipseLink and the internal cache for that class will pass through the Interceptor.

public CacheInvalidationPolicy

Returns:

CacheInvalidationPolicy
getCacheInvalidationPolicy
()

PUBLIC: Return the CacheInvalidationPolicy for this descriptor For uninitialized cache invalidation policies, this will return a NoExpiryCacheInvalidationPolicy

public CacheIsolationType

Returns:

the isolationType
getCacheIsolation
()

PUBLIC: Controls how the Entity instances will be cached.

public CacheKeyType
getCacheKeyType()

ADVANCED: Return what cache key type to use to store the object in the cache.

public CachePolicy
getCachePolicy()

Return the cache policy.

public int
getCacheSynchronizationType()

PUBLIC: Get a value indicating the type of cache synchronization that will be used on objects of this type.

public List<CascadeLockingPolicy>
public CMPPolicy
getCMPPolicy()

ADVANCED: Return the cmp descriptor that holds cmp specific information.

public Vector<E>
getConstraintDependencies()

ADVANCED: automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.

public CopyPolicy
getCopyPolicy()

INTERNAL: Returns the copy policy.

public String
getCopyPolicyClassName()

INTERNAL: Returns the name of a Class that implements CopyPolicy Will be instantiated as a copy policy at initialization times using the no-args constructor

public QueryRedirector
getDefaultDeleteObjectQueryRedirector()

A Default DeleteObjectQuery Redirector will be applied to any executing DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.

public FetchGroup
getDefaultFetchGroup()

INTERNAL: Return the default fetch group on the descriptor.

public QueryRedirector
getDefaultInsertObjectQueryRedirector()

A Default InsertObjectQuery Redirector will be applied to any executing InsertObjectQuery that does not have a redirector set directly on the query.

public QueryRedirector
getDefaultQueryRedirector()

A Default Query Redirector will be applied to any executing object query that does not have a more precise default (like the default ReadObjectQuery Redirector) or a redirector set directly on the query.

public QueryRedirector
getDefaultReadAllQueryRedirector()

A Default ReadAllQuery Redirector will be applied to any executing ReadAllQuery that does not have a redirector set directly on the query.

public QueryRedirector
getDefaultReadObjectQueryRedirector()

A Default ReadObjectQuery Redirector will be applied to any executing ReadObjectQuery that does not have a redirector set directly on the query.

public QueryRedirector
getDefaultReportQueryRedirector()

A Default ReportQuery Redirector will be applied to any executing ReportQuery that does not have a redirector set directly on the query.

public DatabaseTable
getDefaultTable()

INTERNAL: The first table in the tables is always treated as default.

public QueryRedirector
getDefaultUpdateObjectQueryRedirector()

A Default UpdateObjectQuery Redirector will be applied to any executing UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.

public Collection<DatabaseMapping>
getDerivesIdMappinps()

ADVANCED: Return the derives id mappings.

public String
getDescriptorCustomizerClassName()

INTERNAL: DescriptorCustomizer is the JPA equivalent of an amendment method.

public DescriptorEventManager
getDescriptorEventManager()

PUBLIC: Get the event manager for the descriptor.

public InheritancePolicy
getDescriptorInheritancePolicy()

PUBLIC: The inheritance policy is used to define how a descriptor takes part in inheritance.

public DescriptorQueryManager
getDescriptorQueryManager()

PUBLIC: Return the queryManager.

public int
getDescriptorType()

ADVANCED: return the descriptor type (NORMAL by default, others include INTERFACE, AGGREGATE, AGGREGATE COLLECTION)

public String
getDescriptorTypeValue()

INTERNAL: This method is explicitly used by the XML reader.

public DescriptorEventManager
getEventManager()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getEventManager.

PUBLIC: Get the event manager for the descriptor.
public FetchGroupManager
getFetchGroupManager()

PUBLIC: Get the fetch group manager for the descriptor.

public Vector<DatabaseField>
getFields()

INTERNAL: Return all the fields

public Set<DatabaseField>
public boolean

Returns:

the fullyMergeEntity
getFullyMergeEntity
()

public HistoryPolicy
getHistoryPolicy()

PUBLIC: Return this descriptor's HistoryPolicy.

public <T extends IdentityMap> Class<T>
getIdentityMapClass()

INTERNAL: Return the class of identity map to be used by this descriptor.

public int
getIdentityMapSize()

PUBLIC: Return the size of the identity map.

public IdValidation
getIdValidation()

ADVANCED: Return what types are allowed as a primary key (id).

public InheritancePolicy
getInheritancePolicy()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getInheritancePolicy.

PUBLIC: The inheritance policy is used to define how a descriptor takes part in inheritance.
public InheritancePolicy
getInheritancePolicyOrNull()

INTERNAL: Return the inheritance policy.

public InstantiationPolicy
getInstantiationPolicy()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getInstantiationPolicy.

INTERNAL: Returns the instantiation policy.
public InterfacePolicy
getInterfacePolicy()

PUBLIC: Returns the InterfacePolicy.

public InterfacePolicy
getInterfacePolicyOrNull()

INTERNAL: Returns the InterfacePolicy.

public <T> Class<T>
getJavaClass()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getJavaClass.

PUBLIC: Return the java class.
public String
getJavaClassName()

Return the class name, used by the MW.

public List<DatabaseMapping>
getLockableMappings()

INTERNAL: Returns a reference to the mappings that must be traverse when locking

public DatabaseMapping
getMappingForAttributeName(String attributeName)

PUBLIC: Returns the mapping associated with a given attribute name.

public Vector<DatabaseMapping>
getMappings()

PUBLIC: Returns mappings

public List<DatabaseMapping>
getMappingsPostCalculateChanges()

Mappings that require postCalculateChanges method to be called

public List<DatabaseMapping>
getMappingsPostCalculateChangesOnDeleted()

Mappings that require mappingsPostCalculateChangesOnDeleted method to be called

public Vector<E>
getMultipleTableForeignKeyAssociations()

INTERNAL: Returns the foreign key relationships used for multiple tables which were specified by the user.

public Map<DatabaseTable, Set<DatabaseTable>>
getMultipleTableForeignKeys()

INTERNAL: Returns the foreign key relationships used for multiple tables which were specified by the user.

public List<DatabaseTable>
getMultipleTableInsertOrder()

INTERNAL: Returns the List of DatabaseTables in the order which INSERTS should take place.

public Vector<E>
getMultipleTablePrimaryKeyAssociations()

INTERNAL: Returns the foreign key relationships used for multiple tables which were specified by the user.

public MultitenantPolicy
getMultitenantPolicy()

INTERNAL: Retun the multitenant policy

public ObjectBuilder
getObjectBuilder()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getObjectBuilder.

INTERNAL: Return the object builder
public ObjectChangePolicy
getObjectChangePolicy()

PUBLIC: Return this objects ObjectChangePolicy.

public ObjectChangePolicy
getObjectChangePolicyInternal()

INTERNAL: Return this objects ObjectChangePolicy and do not lazy initialize

public OptimisticLockingPolicy
getOptimisticLockingPolicy()

PUBLIC: Returns the OptimisticLockingPolicy.

public PartitioningPolicy
getPartitioningPolicy()

PUBLIC: Return the descriptor's partitioning policy.

public String
getPartitioningPolicyName()

PUBLIC: Return the name of the descriptor's partitioning policy.

public List<DatabaseMapping>
getPreDeleteMappings()

INTERNAL: Set of mappings that require early delete behavior.

public Vector<String>
getPrimaryKeyFieldNames()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getPrimaryKeyFieldNames.

PUBLIC: Return the names of all the primary keys.
public List<DatabaseField>
getPrimaryKeyFields()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getPrimaryKeyFields.

INTERNAL: Return all the primary key fields
public List<IdValidation>
getPrimaryKeyIdValidations()

ADVANCED: Return what types are allowed in each primary key field (id).

public Map<K, V>
getProperties()

PUBLIC: Returns the user defined properties.

public Object
getProperty(String name)

PUBLIC: Returns the descriptor property associated the given String.

public QueryKey
getQueryKeyNamed(String queryKeyName)

INTERNAL: Return the query key with the specified name

public Map<String, QueryKey>
getQueryKeys()

PUBLIC: Return the query keys.

public DescriptorQueryManager
getQueryManager()

PUBLIC: Return the queryManager.

public <T extends IdentityMap> Class<T>
getRemoteIdentityMapClass()

INTERNAL: Return the class of identity map to be used by this descriptor.

public int
getRemoteIdentityMapSize()

PUBLIC: Return the size of the remote identity map.

public Vector<DatabaseField>
getReturnFieldsToGenerateInsert()

INTERNAL: Return fields used to build insert statement.

public Vector<DatabaseField>
getReturnFieldsToGenerateUpdate()

INTERNAL: Return fields used to build update statement.

public List<DatabaseField>
getReturnFieldsToMergeInsert()

INTERNAL: Return fields used in to map into entity for insert.

public List<DatabaseField>
getReturnFieldsToMergeUpdate()

INTERNAL: Return fields used in to map into entity for update.

public List<ReturningPolicy>
getReturningPolicies()

PUBLIC: Return returning policy from current descriptor and from mappings

public ReturningPolicy
getReturningPolicy()

PUBLIC: Return returning policy.

public ClassDescriptor
getRootDescriptor()

PUBLIC: This method returns the root descriptor for for this descriptor's class heirarchy.

public List<DatabaseField>
getSelectionFields()

INTERNAL: Return all selection fields

public List<DatabaseField>
getSelectionFields(ObjectLevelReadQuery query)

INTERNAL: Return all selection fields

public Sequence
getSequence()

Return the descriptor's sequence.

public DatabaseField
getSequenceNumberField()

INTERNAL: Get sequence number field

public String
getSequenceNumberFieldName()

PUBLIC: Get sequence number field name

public String
getSequenceNumberName()

PUBLIC: Get sequence number name

public SerializedObjectPolicy
public String
getSessionName()

INTERNAL: Return the name of the session local to this descriptor.

public DatabaseTable
getTable(String tableName)

INTERNAL: Checks if table name exists with the current descriptor or not.

public String
getTableName()

PUBLIC: Return the name of the descriptor's first table.

public Vector<E>
getTableNames()

PUBLIC: Return the table names.

public TablePerClassPolicy
getTablePerClassPolicy()

PUBLIC: Returns the TablePerClassPolicy.

public Vector<DatabaseTable>
getTables()

INTERNAL: Return all the tables.

public DatabaseField
getTypedField(DatabaseField field)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.getTypedField.

INTERNAL: searches first descriptor than its ReturningPolicy for an equal field
public Map<String, List<String>>
getUnconvertedProperties()

INTERNAL: Used to store un-converted properties, which are subsequenctly converted at runtime (through the convertClassNamesToClasses method.

public int
getUnitOfWorkCacheIsolationLevel()

ADVANCED: Return the unit of work cache isolation setting.

public List<VirtualAttributeMethodInfo>
getVirtualAttributeMethods()

INTERNAL: Return the list of virtual methods sets for this Entity.

public WrapperPolicy
getWrapperPolicy()

ADVANCED: Return the WrapperPolicy for this descriptor.

public boolean
public boolean
hasCMPPolicy()

INTERNAL: Return if the descriptor has a CMP policy.

public boolean
hasDependencyOnParts()

INTERNAL: Checks if the class has any private owned parts or other dependencies, (i.e. M:M join table).

public boolean
hasDerivedId()

INTERNAL: returns true if users have designated one or more mappings as IDs.

public boolean
hasEventManager()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.hasEventManager.

INTERNAL: returns true if a DescriptorEventManager has been set.
public boolean
hasFetchGroupManager()

INTERNAL: Return if the descriptor has a fetch group manager associated with.

public boolean
hasInheritance()

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.hasInheritance.

INTERNAL: Return if this descriptor is involved in inheritance, (is child or parent).
public boolean
hasInterfacePolicy()

INTERNAL: Return if this descriptor is involved in interface, (is child or parent).

public boolean
hasMappingsPostCalculateChanges()

Are there any mappings that require postCalculateChanges method to be called.

public boolean
hasMappingsPostCalculateChangesOnDeleted()

Are there any mappings that require mappingsPostCalculateChangesOnDeleted method to be called.

public boolean
hasMultipleTableConstraintDependecy()

Return if any mapping reference a field in a secondary table.

public boolean
hasMultipleTables()

INTERNAL: Check if descriptor has multiple tables

public boolean
hasMultitenantPolicy()

Return true if the descriptor has a multitenant policy

public boolean
hasNestedIdentityReference(boolean withChildren)

INTERNAL: Calculates whether descriptor references an entity (directly or through a nested mapping).

public boolean

Returns:

the hasNoncacheableMappings
hasNoncacheableMappings
()

public boolean
public boolean

Returns:

the preDeleteMappings
hasPreDeleteMappings
()

public boolean
hasPrivatelyOwnedParts()

INTERNAL: Checks if the class has any private owned parts are not

public boolean
hasQueryKeyOrMapping(String attributeName)

INTERNAL: Checks to see if it has a query key or mapping with the specified name or not.

public boolean
hasRelationships()

INTERNAL: return whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates

public boolean
hasRelationshipsExceptBackpointer(ClassDescriptor descriptor)

INTERNAL: This method returns true if this descriptor has either a ForeignReferenceMapping to an object aside from the one described by descriptor or more than one ForeignReferenceMapping to descriptor.

public boolean
hasReturningPolicies()

INTERNAL: Return if this descriptor or descriptors from mappings has Returning policy.

public boolean
hasReturningPolicy()

INTERNAL: Return if this descriptor has Returning policy.

public boolean
public boolean
hasSimplePrimaryKey()

INTERNAL: PERF: Return if the primary key is simple (direct-mapped) to allow fast extraction.

public boolean
hasTablePerClassPolicy()

INTERNAL: Return if this descriptor is involved in a table per class inheritance.

public boolean

Returns:

true if this descriptor is configured with a table per tenant policy.
hasTablePerMultitenantPolicy
()

PUBLIC

public boolean
hasTargetForeignKeyMapping(AbstractSession session)

INTERNAL: Indicates whether descriptor has at least one target foreign key mapping

public boolean
hasUnconvertedProperties()

INTERNAL: Used to store un-converted properties, which are subsequenctly converted at runtime (through the convertClassNamesToClasses method.

public boolean
hasWrapperPolicy()

INTERNAL: Return if a wrapper policy is used.

public void
initialize(AbstractSession session)

INTERNAL: Initialize the mappings as a separate step.

public void
initialize(DescriptorQueryManager queryManager, AbstractSession session)

INTERNAL: Initialize the query manager specific to the descriptor type.

public void
initializeAggregateInheritancePolicy(AbstractSession session)

INTERNAL: This initialized method is used exclusively for inheritance.

public void
initializeMultipleTablePrimaryKeyFields()

INTERNAL: Rebuild the multiple table primary key map.

protected void
initializeProperties(AbstractSession session)

INTERNAL: Initialize the descriptor properties such as write lock and sequencing.

public void
interfaceInitialization(AbstractSession session)

INTERNAL: Allow the descriptor to initialize any dependencies on this session.

public boolean
isAbstract()

INTERNAL: Convenience method to return true if the java class from this descriptor is abstract.

public boolean
isAggregateCollectionDescriptor()

PUBLIC: Return true if this descriptor is an aggregate collection descriptor

public boolean
isAggregateDescriptor()

PUBLIC: Return true if this descriptor is an aggregate descriptor

public boolean
isCascadeOnDeleteSetOnDatabaseOnSecondaryTables()

ADVANCED: Return if delete cascading has been set on the database for the descriptor's multiple tables.

public boolean
isChildDescriptor()

PUBLIC: Return if the descriptor defines inheritance and is a child.

public boolean
isDescriptorForInterface()

PUBLIC: Return if the java class is an interface.

public boolean
isDescriptorTypeAggregate()

PUBLIC return true if this descriptor is any type of aggregate descriptor.

public boolean
isDescriptorTypeNormal()

INTERNAL: return true if this descriptor is an entity.

public boolean
isEISDescriptor()

PUBLIC: Return if the descriptor maps to an EIS or NoSQL datasource.

public boolean
isFullyInitialized()

INTERNAL: Check if the descriptor is finished initialization.

protected boolean
isInitialized(int initializationStage)

INTERNAL: Check if descriptor is already initialized for the level of initialization.

public boolean
isInterfaceChildDescriptor()

INTERNAL: Return if the descriptor defines inheritance and is a child.

protected boolean
isInterfaceInitialized(int interfaceInitializationStage)

INTERNAL: Check if interface descriptor is already initialized for the level of initialization.

public boolean
isInvalid()

INTERNAL: Return if an error occurred during initialization which should abort any further initialization.

public boolean
isIsolated()

PUBLIC: Returns true if the descriptor represents an isolated class

public boolean
isMultipleTableDescriptor()

INTERNAL: Return if this descriptor has more than one table.

public boolean
isNativeConnectionRequired()

ADVANCED: Return if the descriptor requires usage of a native (unwrapped) JDBC connection.

public boolean
isObjectRelationalDataTypeDescriptor()

PUBLIC: Return if the descriptor maps to an object-relational structured type.

public boolean
isPrimaryKeySetAfterInsert(AbstractSession session)

INTERNAL: Indicates whether pk or some of its components set after insert into the database.

public boolean
isProtectedIsolation()

PUBLIC: Returns true if the descriptor represents an isolated class

public boolean
isRelationalDescriptor()

PUBLIC: Return if the descriptor maps to a relational table.

public boolean
isReturnTypeRequiredForReturningPolicy()

INTERNAL: Indicates if a return type is required for the field set on the returning policy.

public boolean
isSharedIsolation()

PUBLIC: Returns true if the descriptor represents an isolated class

public boolean
isXMLDescriptor()

PUBLIC: Return if the descriptor maps to XML.

public DatabaseMapping
newAggregateCollectionMapping()

Return a new aggregate collection/element collection mapping for this type of descriptor.

public AggregateMapping
newAggregateMapping()

Return a new aggregate/embedded mapping for this type of descriptor.

public DatabaseMapping
newDirectCollectionMapping()

Return a new direct collection/element collection mapping for this type of descriptor.

public AbstractDirectMapping
newDirectMapping()

Return a new direct/basic mapping for this type of descriptor.

public CollectionMapping
newManyToManyMapping()

Return a new one to many mapping for this type of descriptor.

public ObjectReferenceMapping
newManyToOneMapping()

Return a new many to one mapping for this type of descriptor.

public CollectionMapping
newOneToManyMapping()

Return a new one to many mapping for this type of descriptor.

public ObjectReferenceMapping
newOneToOneMapping()

Return a new one to one mapping for this type of descriptor.

public CollectionMapping
newUnidirectionalOneToManyMapping()

Return a new one to many mapping for this type of descriptor.

public void
notifyReferencingDescriptorsOfIsolation(AbstractSession session)

INTERNAL: Configure all descriptors referencing this class to be protected and update their cache settings.

public void
onlyRefreshCacheIfNewerVersion()

PUBLIC: This method is the equivalent of calling setShouldOnlyRefreshCacheIfNewerVersion with an argument of true: it configures a ClassDescriptor to only refresh the cache if the data received from the database by a query is newer than the data in the cache (as determined by the optimistic locking field) and as long as one of the following is true:

public void
postInitialize(AbstractSession session)

INTERNAL: Post initializations after mappings are initialized.

private void
public void
preInitialize(AbstractSession session)

INTERNAL: Allow the descriptor to initialize any dependencies on this session.

protected void
preInitializeInheritancePolicy(AbstractSession session)

Hook together the inheritance policy tree.

public void
preInterfaceInitialization(AbstractSession session)

INTERNAL: Allow the descriptor to initialize any dependencies on this session.

protected void
private void
public void
rehashFieldDependancies(AbstractSession session)

INTERNAL: Rehash any hashtables based on fields.

public void
reInitializeJoinedAttributes()

INTERNAL: A user should not be setting which attributes to join or not to join after descriptor initialization; provided only for backwards compatibility.

public void
remoteInitialization(DistributedSession session)

INTERNAL: Used to initialize a remote descriptor.

public DatabaseMapping
removeMappingForAttributeName(String attributeName)

ADVANCED: Removes the locally defined mapping associated with a given attribute name.

public void
removeProperty(String property)

PUBLIC: Remove the user defined property.

public boolean
requiresInitialization(AbstractSession session)

INTERNAL: Aggregate and Interface descriptors do not require initialization as they are cloned and initialized by each mapping.

protected void
selfValidationAfterInitialization(AbstractSession session)

INTERNAL: Validate that the descriptor was defined correctly.

protected void
selfValidationBeforeInitialization(AbstractSession session)

INTERNAL: Validate that the descriptor's non-mapping attribute are defined correctly.

public void
setAccessorTree(List<AttributeAccessor>
the accessorTree to set
accessorTree
)

protected void
setAdditionalTablePrimaryKeyFields(DatabaseTable table, DatabaseField field1, DatabaseField field2)

INTERNAL: This is used to map the primary key field names in a multiple table descriptor.

public void
setAdditionalTablePrimaryKeyFields(Map<DatabaseTable, Map<DatabaseField, DatabaseField>> additionalTablePrimaryKeyFields)

INTERNAL: This is used to map the primary key field names in a multiple table descriptor.

public void
setAlias(String alias)

PUBLIC: Set the alias

protected void
setAllFields(Vector<DatabaseField> allFields)

INTERNAL: Set all the fields.

public void
setAmendmentClass(Class<?> amendmentClass)

PUBLIC: Set the amendment class.

public void
setAmendmentClassName(String amendmentClassName)

INTERNAL: Return the amendment class name, used by the MW.

public void
setAmendmentMethodName(String amendmentMethodName)

PUBLIC: Set the amendment method.

public void
setCacheable(Boolean
Entity @Cacheable annotation value for current class or null if @Cacheable annotation is not set. Parent values are ignored, value shall refer to current class only. This value should be set only when SharedCacheMode allows to override caching on entity level (DISABLE_SELECTIVE or ENABLE_SELECTIVE).
cacheable
)

INTERNAL: Set entity @Cacheable annotation value in cache configuration object.

public void
setCacheInterceptorClass(Class<? extends CacheInterceptor> cacheInterceptorClass)

PUBLIC: A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction between EclipseLink and the internal cache for that class will pass through the Interceptor.

public void
setCacheInterceptorClassName(String cacheInterceptorClassName)

PUBLIC: A CacheInterceptor is an adaptor that when overridden and assigned to a Descriptor all interaction between EclipseLink and the internal cache for that class will pass through the Interceptor.

public void
setCacheInvalidationPolicy(CacheInvalidationPolicy policy)

PUBLIC: Set the Cache Invalidation Policy for this descriptor.

public void
setCacheIsolation(CacheIsolationType isolationType)

PUBLIC: Controls how the Entity instances and data will be cached.

public void
setCacheKeyType(CacheKeyType cacheKeyType)

ADVANCED: Set what cache key type to use to store the object in the cache.

public void
setCachePolicy(CachePolicy cachePolicy)

ADVANCED: Set cache policy for the descriptor.

public void
setCacheSynchronizationType(int
int The synchronization type for this descriptor
type
)

PUBLIC: Set the type of cache synchronization that will be used on objects of this type.

public void
setCMPPolicy(CMPPolicy newCMPPolicy)

ADVANCED: Set the cmp descriptor that holds cmp specific information.

public void
setConstraintDependencies(Vector<E> constraintDependencies)

ADVANCED: automatically orders database access through the foreign key information provided in 1:1 and 1:m mappings.

public void
setCopyPolicy(CopyPolicy policy)

INTERNAL: Set the copy policy.

public void
setCopyPolicyClassName(String className)

INTERNAL: Sets the name of a Class that implements CopyPolicy Will be instantiatied as a copy policy at initialization times using the no-args constructor

public void
setDefaultDeleteObjectQueryRedirector(QueryRedirector defaultDeleteObjectQueryRedirector)

A Default DeleteObjectQuery Redirector will be applied to any executing DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.

public void
setDefaultDeleteObjectQueryRedirectorClassName(String defaultDeleteObjectQueryRedirectorClassName)

A Default DeleteObjectQuery Redirector will be applied to any executing DeleteObjectQuery or DeleteAllQuery that does not have a redirector set directly on the query.

public void
setDefaultInsertObjectQueryRedirector(QueryRedirector defaultInsertQueryRedirector)

A Default InsertObjectQuery Redirector will be applied to any executing InsertObjectQuery that does not have a redirector set directly on the query.

public void
setDefaultInsertObjectQueryRedirectorClassName(String defaultInsertObjectQueryRedirectorClassName)

A Default InsertObjectQuery Redirector will be applied to any executing InsertObjectQuery that does not have a redirector set directly on the query.

public void
setDefaultQueryRedirector(QueryRedirector defaultRedirector)

A Default Query Redirector will be applied to any executing object query that does not have a more precise default (like the default ReadObjectQuery Redirector) or a redirector set directly on the query.

public void
setDefaultQueryRedirectorClassName(String defaultQueryRedirectorClassName)

A Default Query Redirector will be applied to any executing object query that does not have a more precise default (like the default ReadObjectQuery Redirector) or a redirector set directly on the query.

public void
setDefaultReadAllQueryRedirector(QueryRedirector defaultReadAllQueryRedirector)

A Default ReadAllQuery Redirector will be applied to any executing ReadAllQuery that does not have a redirector set directly on the query.

public void
setDefaultReadAllQueryRedirectorClassName(String defaultReadAllQueryRedirectorClassName)

A Default ReadAllQuery Redirector will be applied to any executing ReadAllQuery that does not have a redirector set directly on the query.

public void
setDefaultReadObjectQueryRedirector(QueryRedirector defaultReadObjectQueryRedirector)

A Default ReadObjectQuery Redirector will be applied to any executing ReadObjectQuery that does not have a redirector set directly on the query.

public void
setDefaultReadObjectQueryRedirectorClassName(String defaultReadObjectQueryRedirectorClassName)

A Default ReadObjectQuery Redirector will be applied to any executing ReadObjectQuery that does not have a redirector set directly on the query.

public void
setDefaultReportQueryRedirector(QueryRedirector defaultReportQueryRedirector)

A Default ReportQuery Redirector will be applied to any executing ReportQuery that does not have a redirector set directly on the query.

public void
setDefaultReportQueryRedirectorClassName(String defaultReportQueryRedirectorClassName)

A Default ReportQuery Redirector will be applied to any executing ReportQuery that does not have a redirector set directly on the query.

public void
setDefaultTable(DatabaseTable defaultTable)

INTERNAL: The descriptors default table can be configured if the first table is not desired.

public void
setDefaultTableName(String defaultTableName)

PUBLIC: The descriptors default table can be configured if the first table is not desired.

public void
setDefaultUpdateObjectQueryRedirector(QueryRedirector defaultUpdateQueryRedirector)

A Default UpdateObjectQuery Redirector will be applied to any executing UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.

public void
setDefaultUpdateObjectQueryRedirectorClassName(String defaultUpdateObjectQueryRedirectorClassName)

A Default UpdateObjectQuery Redirector will be applied to any executing UpdateObjectQuery or UpdateAllQuery that does not have a redirector set directly on the query.

public void
setDescriptorCustomizerClassName(String descriptorCustomizerClassName)

INTERNAL: Sets the JPA DescriptorCustomizer class name.

public void
setDescriptorType(int descriptorType)

ADVANCED: set the descriptor type (NORMAL by default, others include INTERFACE, AGGREGATE, AGGREGATE COLLECTION)

public void
setDescriptorTypeValue(String value)

INTERNAL: This method is explicitly used by the XML reader.

public void
setEventManager(DescriptorEventManager eventManager)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.setEventManager.

INTERNAL: Set the event manager for the descriptor.
public void
setExistenceChecking(String token)

INTERNAL: OBSOLETE - old reader.

public void
setFetchGroupManager(FetchGroupManager fetchGroupManager)

PUBLIC: Set the fetch group manager for the descriptor.

public void
setFields(Vector<DatabaseField> fields)

INTERNAL: Set the fields used by this descriptor.

public void
setForeignKeyFieldNamesForMultipleTable(List<Association> associations)

INTERNAL: This method is used by the XML Deployment ClassDescriptor to read and write these mappings

public void
setFullyMergeEntity(boolean
the fullyMergeEntity to set
fullyMergeEntity
)

public void
setHasMultipleTableConstraintDependecy(boolean hasMultipleTableConstraintDependecy)

Set if any mapping reference a field in a secondary table.

public void
setHasRelationships(boolean hasRelationships)

INTERNAL: set whether this descriptor has any relationships through its mappings, through inheritance, or through aggregates

public void
setHasSimplePrimaryKey(boolean hasSimplePrimaryKey)

INTERNAL: PERF: Set if the primary key is simple (direct-mapped) to allow fast extraction.

public void
setHistoryPolicy(HistoryPolicy policy)

PUBLIC: Set the HistoryPolicy for this descriptor.

public void
setIdentityMapClass(Class<? extends IdentityMap> theIdentityMapClass)

PUBLIC: Set the class of identity map to be used by this descriptor.

public void
setIdentityMapSize(int identityMapSize)

PUBLIC: Set the size of the identity map to be used by this descriptor.

public void
setIdValidation(IdValidation idValidation)

ADVANCED: Set what types are allowed as a primary key (id).

public void
setInheritancePolicy(InheritancePolicy inheritancePolicy)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.setInheritancePolicy.

INTERNAL: Sets the inheritance policy.
protected void
setInitializationStage(int initializationStage)

INTERNAL:

public void
setInstantiationPolicy(InstantiationPolicy instantiationPolicy)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.setInstantiationPolicy.

INTERNAL: Sets the instantiation policy.
protected void
setInterfaceInitializationStage(int interfaceInitializationStage)

INTERNAL:

public void
setInterfacePolicy(InterfacePolicy interfacePolicy)

INTERNAL: Sets the interface policy.

public void
setInternalDefaultTable()

INTERNAL: Set the default table if one if not already set.

public void
setInternalDefaultTable(DatabaseTable defaultTable)

INTERNAL: Set the default table if one if not already set.

public void
setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables(boolean isCascadeOnDeleteSetOnDatabaseOnSecondaryTables)

ADVANCED: Set if delete cascading has been set on the database for the descriptor's multiple tables.

public void
setIsNativeConnectionRequired(boolean isNativeConnectionRequired)

ADVANCED: Set if the descriptor requires usage of a native (unwrapped) JDBC connection.

public void
setJavaClass(Class<?> theJavaClass)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.setJavaClass.

PUBLIC: Set the Java class that this descriptor maps.
public void
setJavaClassName(String theJavaClassName)

INTERNAL: Return the java class name, used by the MW.

public void
setJavaInterface(Class<?> theJavaInterface)

PUBLIC: Sets the descriptor to be for an interface.

public void
setJavaInterfaceName(String theJavaInterfaceName)

INTERNAL: Return the java interface name, used by the MW.

public void
setLockableMappings(List<DatabaseMapping> lockableMappings)

INTERNAL: Set the list of lockable mappings for this project This method is provided for CMP use.

public void
setMappings(Vector<DatabaseMapping> mappings)

INTERNAL: Set the mappings.

protected void
public void
setMultipleTableInsertOrder(List<DatabaseTable> newValue)

ADVANCED: Sets the List of DatabaseTables in the order which INSERTS should take place.

public void
setMultitenantPolicy(MultitenantPolicy multitenantPolicy)

INTERNAL: Set a multitenant policy on the descriptor.

protected void
public void
setObjectChangePolicy(ObjectChangePolicy policy)

PUBLIC: Set the ObjectChangePolicy for this descriptor.

public void
setOptimisticLockingPolicy(OptimisticLockingPolicy optimisticLockingPolicy)

PUBLIC: Set the OptimisticLockingPolicy.

public void
setPartitioningPolicy(PartitioningPolicy partitioningPolicy)

PUBLIC: Set the descriptor's partitioning policy.

public void
setPartitioningPolicyName(String partitioningPolicyName)

PUBLIC: Set the name of the descriptor's partitioning policy.

public void
setPrimaryKeyFieldName(String fieldName)

PUBLIC: Specify the primary key field of the descriptors table.

public void
setPrimaryKeyFieldNames(Vector<E> primaryKeyFieldsName)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.setPrimaryKeyFieldNames.

PUBLIC: User can specify a vector of all the primary key field names if primary key is composite.
public void
setPrimaryKeyFields(List<DatabaseField> thePrimaryKeyFields)

Implements abstract org.eclipse.persistence.core.descriptors.CoreDescriptor.setPrimaryKeyFields.

INTERNAL: Set the primary key fields
public void
setPrimaryKeyIdValidations(List<IdValidation> primaryKeyIdValidations)

ADVANCED: Return what types are allowed in each primary key field (id).

public void
setProperties(Map<K, V> properties)

INTERNAL: Set the user defined properties.

public void
setProperty(String name, Object value)

PUBLIC: Set the user defined property.

public void
setQueryKeys(Map<String, QueryKey> queryKeys)

INTERNAL: Set the query keys.

public void
setQueryManager(DescriptorQueryManager queryManager)

INTERNAL: Set the query manager.

public void
setReadOnly()

PUBLIC: Set the descriptor to be read-only.

public void
setRemoteIdentityMapClass(Class<? extends IdentityMap> theIdentityMapClass)

PUBLIC: Set the class of identity map to be used by this descriptor.

public void
setRemoteIdentityMapSize(int identityMapSize)

PUBLIC: Set the size of the identity map to be used by this descriptor.

public void
setReturningPolicy(ReturningPolicy returningPolicy)

PUBLIC: Sets the returning policy.

public void
setSequence(Sequence sequence)

Set the descriptor's sequence.

public void
setSequenceNumberField(DatabaseField sequenceNumberField)

INTERNAL: Set the sequence number field.

public void
setSequenceNumberFieldName(String fieldName)

PUBLIC: Set the sequence number field name.

public void
setSequenceNumberName(String name)

PUBLIC: Set the sequence number name.

public void
setSerializedObjectPolicy(SerializedObjectPolicy serializedObjectPolicy)

INTERNAL:

protected void
setSessionName(String sessionName)

INTERNAL: Set the name of the session local to this descriptor.

public void
setShouldAcquireCascadedLocks(boolean shouldAcquireCascadedLocks)

INTERNAL: PERF: Set if deferred locks should be used.

public void
setShouldAlwaysConformResultsInUnitOfWork(boolean shouldAlwaysConformResultsInUnitOfWork)

PUBLIC: set if the descriptor is defined to always conform the results in unit of work in read query.

public void
setShouldAlwaysRefreshCache(boolean shouldAlwaysRefreshCache)

PUBLIC: When the shouldAlwaysRefreshCache argument passed into this method is true, this method configures a ClassDescriptor to always refresh the cache if data is received from the database by any query.

public void
setShouldAlwaysRefreshCacheOnRemote(boolean shouldAlwaysRefreshCacheOnRemote)

PUBLIC: When the shouldAlwaysRefreshCacheOnRemote argument passed into this method is true, this method configures a ClassDescriptor to always remotely refresh the cache if data is received from the database by any query in a org.eclipse.persistence.sessions.remote.RemoteSession.

public void
setShouldBeReadOnly(boolean shouldBeReadOnly)

PUBLIC: Define if the descriptor reference class is read-only

public void
setShouldDisableCacheHits(boolean shouldDisableCacheHits)

PUBLIC: Set if cache hits on primary key read object queries should be disabled.

public void
setShouldDisableCacheHitsOnRemote(boolean shouldDisableCacheHitsOnRemote)

PUBLIC: Set if the remote session cache hits on primary key read object queries is allowed or not.

public void
setShouldLockForClone(boolean shouldLockForClone)

ADVANCED: When set to false, this setting will allow the UOW to avoid locking the shared cache instance in order to perform a clone.

public void
setShouldOnlyRefreshCacheIfNewerVersion(boolean shouldOnlyRefreshCacheIfNewerVersion)

PUBLIC: When the shouldOnlyRefreshCacheIfNewerVersion argument passed into this method is true, this method configures a ClassDescriptor to only refresh the cache if the data received from the database by a query is newer than the data in the cache (as determined by the optimistic locking field) and as long as one of the following is true:

public void
setShouldOrderMappings(boolean shouldOrderMappings)

PUBLIC: This is set to turn off the ordering of mappings.

public void
setShouldRegisterResultsInUnitOfWork(boolean shouldRegisterResultsInUnitOfWork)

INTERNAL: Set to false to have queries conform to a UnitOfWork without registering any additional objects not already in that UnitOfWork.

public void
setTableName(String tableName)

PUBLIC: Specify the table name for the class of objects the receiver describes.

public void
setTableNames(Vector<E> tableNames)

PUBLIC: Specify the all table names for the class of objects the receiver describes.

public void
setTablePerClassPolicy(TablePerClassPolicy tablePerClassPolicy)

INTERNAL: Sets the table per class policy.

public void
setTableQualifier(String tableQualifier)

PUBLIC: Set the table Qualifier for this descriptor.

public void
setTables(Vector<DatabaseTable> theTables)

INTERNAL: Sets the tables

public void
setUnitOfWorkCacheIsolationLevel(int unitOfWorkCacheIsolationLevel)

ADVANCED: This setting configures how the session cache will be used in a unit of work.

public void
setVirtualAttributeMethods(List<VirtualAttributeMethodInfo> virtualAttributeMethods)

INTERNAL: Set the list of methods used my mappings with virtual access this list is used to determine which methods to weave

public void
setWrapperPolicy(WrapperPolicy wrapperPolicy)

ADVANCED: Sets the WrapperPolicy for this descriptor.

public boolean
shouldAcquireCascadedLocks()

INTERNAL: PERF: Return if deferred locks should be used.

public boolean
shouldAlwaysConformResultsInUnitOfWork()

PUBLIC: Return if the descriptor is defined to always conform the results in unit of work in read query.

public boolean
shouldAlwaysRefreshCache()

PUBLIC: This method returns true if the ClassDescriptor is configured to always refresh the cache if data is received from the database by any query.

public boolean
shouldAlwaysRefreshCacheOnRemote()

PUBLIC: This method returns true if the ClassDescriptor is configured to always remotely refresh the cache if data is received from the database by any query in a org.eclipse.persistence.sessions.remote.RemoteSession.

public boolean
shouldBeReadOnly()

PUBLIC: Return if the descriptor reference class is defined as read-only

public boolean
shouldDisableCacheHits()

PUBLIC: Return if for cache hits on primary key read object queries to be disabled.

public boolean
shouldDisableCacheHitsOnRemote()

PUBLIC: Return if the remote server session cache hits on primary key read object queries is aloowed or not.

public boolean
shouldIsolateObjectsInUnitOfWork()

INTERNAL: Return if the unit of work should by-pass the session cache.

public boolean
shouldIsolateObjectsInUnitOfWorkEarlyTransaction()

INTERNAL: Return if the unit of work should by-pass the session cache after an early transaction.

public boolean
shouldIsolateProtectedObjectsInUnitOfWork()

INTERNAL: Return if the unit of work should by-pass the IsolatedSession cache.

public boolean
shouldLockForClone()

ADVANCED: When set to false, this setting will allow the UOW to avoid locking the shared cache instance in order to perform a clone.

public boolean
shouldOnlyRefreshCacheIfNewerVersion()

PUBLIC: This method returns true if the ClassDescriptor is configured to only refresh the cache if the data received from the database by a query is newer than the data in the cache (as determined by the optimistic locking field).

public boolean
shouldOrderMappings()

INTERNAL: Return if mappings should be ordered or not.

public boolean

Returns:

true by default.
shouldRegisterResultsInUnitOfWork
()

INTERNAL: Allows one to do conforming in a UnitOfWork without registering.

public boolean
shouldUseAdditionalJoinExpression()

PUBLIC: Return true if this descriptor should using an additional join expresison.

public boolean
shouldUseCacheIdentityMap()

PUBLIC: Return true if this descriptor is using CacheIdentityMap

public boolean
shouldUseFullChangeSetsForNewObjects()

INTERNAL: Return if change sets are required for new objects.

public boolean
shouldUseFullIdentityMap()

PUBLIC: Return true if this descriptor is using FullIdentityMap

public boolean
shouldUseHardCacheWeakIdentityMap()

PUBLIC: Return true if this descriptor is using HardCacheWeakIdentityMap.

public boolean
shouldUseNoIdentityMap()

PUBLIC: Return true if this descriptor is using NoIdentityMap

public boolean
shouldUseRemoteCacheIdentityMap()

PUBLIC: Return true if this descriptor is using CacheIdentityMap

public boolean
shouldUseRemoteFullIdentityMap()

PUBLIC: Return true if this descriptor is using FullIdentityMap

public boolean
shouldUseRemoteHardCacheWeakIdentityMap()

PUBLIC: Return true if this descriptor is using HardCacheWeakIdentityMap

public boolean
shouldUseRemoteNoIdentityMap()

PUBLIC: Return true if this descriptor is using NoIdentityMap

public boolean
shouldUseRemoteSoftCacheWeakIdentityMap()

PUBLIC: Return true if this descriptor is using SoftCacheWeakIdentityMap

public boolean
shouldUseRemoteSoftIdentityMap()

PUBLIC: Return true if this descriptor is using SoftIdentityMap

public boolean
shouldUseRemoteWeakIdentityMap()

PUBLIC: Return true if this descriptor is using WeakIdentityMap

public boolean
shouldUseSessionCacheInUnitOfWorkEarlyTransaction()

INTERNAL: Return if the unit of work should use the session cache after an early transaction.

public boolean
shouldUseSoftCacheWeakIdentityMap()

PUBLIC: Return true if this descriptor is using SoftCacheWeakIdentityMap.

public boolean
shouldUseSoftIdentityMap()

PUBLIC: Return true if this descriptor is using SoftIdentityMap

public boolean
shouldUseWeakIdentityMap()

PUBLIC: Return true if this descriptor is using WeakIdentityMap

public boolean
supportsChangeTracking(Project project)

INTERNAL: Returns whether this descriptor is capable of supporting weaved change tracking.

protected void
toggleAdditionalTablePrimaryKeyFields()

INTERNAL: Eclipselink needs additionalTablePKFields entries to be associated with tables other than the main (getTables.get(0)) one.

public String
toString()

Overrides java.lang.Object.toString.

PUBLIC: Returns a brief string representation of the receiver.
public void
useAllFieldsLocking()

PUBLIC: Set the locking policy an all fields locking policy.

public void
useCacheIdentityMap()

PUBLIC: Set the class of identity map to be the cache identity map.

public void
useChangedFieldsLocking()

PUBLIC: Set the locking policy a changed fields locking policy.

public void
useCloneCopyPolicy()

PUBLIC: Specifies that the creation of clones within a unit of work is done by sending the #clone() method to the original object.

public void
useCloneCopyPolicy(String cloneMethodName)

PUBLIC: Specifies that the creation of clones within a unit of work is done by sending the cloneMethodName method to the original object.

public void
useDefaultConstructorInstantiationPolicy()

PUBLIC: Use the default constructor to create new instances of objects built from the database.

public void
useFactoryInstantiationPolicy(Class<?> factoryClass, String methodName)

PUBLIC: Use an object factory to create new instances of objects built from the database.

public void
useFactoryInstantiationPolicy(String factoryClassName, String methodName)

INTERNAL: Set the factory class name, used by the MW.

public void
useFactoryInstantiationPolicy(Class<?> factoryClass, String methodName, String factoryMethodName)

PUBLIC: Use an object factory to create new instances of objects built from the database.

public void
useFactoryInstantiationPolicy(String factoryClassName, String methodName, String factoryMethodName)

INTERNAL: Set the factory class name, used by the MW.

public void
useFactoryInstantiationPolicy(Object factory, String methodName)

PUBLIC: Use an object factory to create new instances of objects built from the database.

public void
useFullIdentityMap()

PUBLIC: Set the class of identity map to be the full identity map.

public void
useHardCacheWeakIdentityMap()

PUBLIC: Set the class of identity map to be the hard cache weak identity map.

public void
useInstantiationCopyPolicy()

PUBLIC: Specifies that the creation of clones within a unit of work is done by building a new instance using the technique indicated by the descriptor's instantiation policy (which by default is to use the the default constructor).

public void
useMethodInstantiationPolicy(String staticMethodName)

PUBLIC: Use the specified static method to create new instances of objects built from the database.

public void
useNoIdentityMap()

PUBLIC: Set the class of identity map to be the no identity map.

public void
usePropertyAccessForWeaving()

INTERNAL: Record that this descriptor uses property access.

public void
useRemoteCacheIdentityMap()

PUBLIC: Set the class of identity map to be the cache identity map.

public void
useRemoteFullIdentityMap()

PUBLIC: Set the class of identity map to be the full identity map.

public void
useRemoteHardCacheWeakIdentityMap()

PUBLIC: Set the class of identity map to be the hard cache weak identity map.

public void
useRemoteNoIdentityMap()

PUBLIC: Set the class of identity map to be the no identity map.

public void
useRemoteSoftCacheWeakIdentityMap()

PUBLIC: Set the class of identity map to be the soft cache weak identity map.

public void
useRemoteSoftIdentityMap()

PUBLIC: Set the class of identity map to be the soft identity map.

public void
useRemoteWeakIdentityMap()

PUBLIC: Set the class of identity map to be the weak identity map.

public void
useSelectedFieldsLocking(Vector<E> fieldNames)

PUBLIC: Set the locking policy a selected fields locking policy.

public boolean
usesFieldLocking()

INTERNAL: Return true if the receiver uses either all or changed fields for optimistic locking.

public void
useSoftCacheWeakIdentityMap()

PUBLIC: Set the class of identity map to be the soft cache weak identity map.

public void
useSoftIdentityMap()

PUBLIC: Set the class of identity map to be the soft identity map.

public boolean
usesOptimisticLocking()

PUBLIC: Return true if the receiver uses write (optimistic) locking.

public boolean
usesPropertyAccessForWeaving()

INTERNAL: Return whether this descriptor uses property access.

public boolean
usesSequenceNumbers()

PUBLIC: Return true if the receiver uses sequence numbers.

public boolean
usesVersionLocking()

PUBLIC: Return true if the receiver uses version optimistic locking.

public void
useTimestampLocking(String writeLockFieldName)

PUBLIC: Use the Timestamps locking policy and storing the value in the cache key #see useVersionLocking(String)

public void
useTimestampLocking(String writeLockFieldName, boolean shouldStoreInCache)

PUBLIC: Set the locking policy to use timestamp version locking.

public void
useVersionLocking(String writeLockFieldName)

PUBLIC: Default to use the version locking policy and storing the value in the cache key #see useVersionLocking(String)

public void
useVersionLocking(String writeLockFieldName, boolean shouldStoreInCache)

PUBLIC: Set the locking policy to use numeric version locking.

public void
useWeakIdentityMap()

PUBLIC: Set the class of identity map to be the weak identity map.

protected void
validateAfterInitialization(AbstractSession session)

INTERNAL: Validate the entire post-initialization descriptor.

protected void
validateBeforeInitialization(AbstractSession session)

INTERNAL: Validate the entire pre-initialization descriptor.

protected void
protected void
verifyMultipleTableInsertOrder()

INTERNAL: Verify multiple table insert order provided by the user.

protected void
verifyMultipleTablesForeignKeysTables()

INTERNAL: Verify that the tables specified in multipleTablesForeignKeysTables are valid.

protected void
verifyTableQualifiers(Platform platform)

INTERNAL: Check that the qualifier on the table names are properly set.

Inherited from org.eclipse.persistence.core.descriptors.CoreDescriptor:
addAttributeGroup