Package org.eclipse.persistence.oxm
Class XMLDescriptor
- java.lang.Object
-
- org.eclipse.persistence.core.descriptors.CoreDescriptor<AttributeGroup,DescriptorEventManager,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,java.util.Vector,org.eclipse.persistence.internal.descriptors.ObjectBuilder>
-
- org.eclipse.persistence.descriptors.ClassDescriptor
-
- org.eclipse.persistence.oxm.XMLDescriptor
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
public class XMLDescriptor extends ClassDescriptor implements org.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
Use an XML project for nontransactional, nonpersistent (in-memory) conversions between Java objects and XML documents. An XMLDescriptor is a set of mappings that describe how an objects's data is to be represented in an XML document. XML descriptors describe Java objects that you map to simple and complex types defined by an XML schema document (XSD). Using XML descriptors in an EclipseLink XML project, you can configure XML mappings.
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.descriptors.ClassDescriptor
accessorTree, additionalAggregateCollectionKeyFields, additionalTablePrimaryKeyFields, additionalWritableMapKeyFields, AGGREGATE, AGGREGATE_COLLECTION, alias, allFields, allSelectionFields, amendmentClass, amendmentClassName, amendmentMethodName, cacheInvalidationPolicy, cachePolicy, cascadedLockingInitialized, cascadeLockingPolicies, changePolicy, cmpPolicy, constraintDependencies, copyPolicy, copyPolicyClassName, defaultDeleteObjectQueryRedirector, defaultDeleteObjectQueryRedirectorClassName, defaultInsertObjectQueryRedirector, defaultInsertObjectQueryRedirectorClassName, defaultQueryRedirector, defaultQueryRedirectorClassName, defaultReadAllQueryRedirector, defaultReadAllQueryRedirectorClassName, defaultReadObjectQueryRedirector, defaultReadObjectQueryRedirectorClassName, defaultReportQueryRedirector, defaultReportQueryRedirectorClassName, defaultTable, defaultUpdateObjectQueryRedirector, defaultUpdateObjectQueryRedirectorClassName, derivesIdMappings, descriptorCustomizerClassName, descriptorType, DO_NOT_SEND_CHANGES, ERROR, fetchGroupManager, fields, foreignKeyValuesForCaching, hasMultipleTableConstraintDependecy, hasNoncacheableMappings, hasRelationships, hasSimplePrimaryKey, historyPolicy, idValidation, initializationStage, INITIALIZED, INTERFACE, interfaceInitializationStage, interfacePolicy, INVALIDATE_CHANGED_OBJECTS, isCascadeOnDeleteSetOnDatabaseOnSecondaryTables, isNativeConnectionRequired, ISOLATE_CACHE_AFTER_TRANSACTION, ISOLATE_CACHE_ALWAYS, ISOLATE_FROM_CLIENT_SESSION, ISOLATE_NEW_DATA_AFTER_TRANSACTION, javaClass, javaClassName, lockableMappings, mappings, mappingsPostCalculateChanges, mappingsPostCalculateChangesOnDeleted, multipleTableForeignKeys, multipleTableInsertOrder, multitenantPolicy, NORMAL, optimisticLockingPolicy, partitioningPolicy, partitioningPolicyName, POST_INITIALIZED, preDeleteMappings, PREINITIALIZED, primaryKeyFields, primaryKeyIdValidations, properties, queryKeys, queryManager, referencingClasses, returnFieldsToGenerateInsert, returnFieldsToGenerateUpdate, returnFieldsToMergeInsert, returnFieldsToMergeUpdate, returningPolicies, returningPolicy, selectionFields, SEND_NEW_OBJECTS_WITH_CHANGES, SEND_OBJECT_CHANGES, sequence, sequenceNumberField, sequenceNumberName, serializedObjectPolicy, sessionName, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldBeReadOnly, shouldLockForClone, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseFullChangeSetsForNewObjects, tables, unconvertedProperties, UNDEFINED_ISOLATATION, UNDEFINED_OBJECT_CHANGE_BEHAVIOR, UNINITIALIZED, USE_SESSION_CACHE_AFTER_TRANSACTION, virtualAttributeMethods, weavingUsesPropertyAccess, wrapperPolicy
-
Fields inherited from class org.eclipse.persistence.core.descriptors.CoreDescriptor
attributeGroups, eventManager, field, inheritancePolicy, instantiationPolicy, objectBuilder
-
-
Constructor Summary
Constructors Constructor Description XMLDescriptor()
PUBLIC: Return a new XMLDescriptor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DatabaseMapping
addDirectMapping(java.lang.String attributeName, java.lang.String xpathString)
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 xpathString)
PUBLIC: Add a direct to node mapping to the receiver.void
addPrimaryKeyField(org.eclipse.persistence.internal.helper.DatabaseField field)
ADVANCED: Specify the primary key field of the descriptors table.void
addPrimaryKeyFieldName(java.lang.String fieldName)
PUBLIC: Specify the primary key field of the descriptors table.void
addRootElement(java.lang.String rootElementName)
PUBLIC: Add a root element name for the Descriptor This value is stored in place of a table namejava.util.Vector
buildDirectValuesFromFieldValue(java.lang.Object fieldValue)
INTERNAL: Extract the direct values from the specified field value.org.eclipse.persistence.internal.helper.DatabaseField
buildField(java.lang.String fieldName)
INTERNAL: A DatabaseField is built from the given field name.org.eclipse.persistence.internal.helper.DatabaseField
buildField(org.eclipse.persistence.internal.helper.DatabaseField field)
INTERNAL: This is used only in initialization.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
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(if necessary) and return the nested XMLRecord from the specified field value.java.util.Vector
buildNestedRowsFromFieldValue(java.lang.Object fieldValue, org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Build(if necessary) and return a Vector of the nested XMLRecords from the specified field value.void
convertClassNamesToClasses(java.lang.ClassLoader classLoader)
INTERNAL: Convert all the class-name-based settings in this Descriptor to actual class-based settings.protected org.eclipse.persistence.internal.helper.DatabaseTable
extractDefaultTable()
Aggregates use a dummy table as default.java.lang.String
getDefaultRootElement()
PUBLIC: Return the default root element name for the ClassDescriptor This value is stored in place of a table name This value is mandatory for all root objectsXMLField
getDefaultRootElementField()
javax.xml.namespace.QName
getDefaultRootElementType()
InheritancePolicy
getInheritancePolicy()
PUBLIC: The inheritance policy is used to define how a descriptor takes part in inheritance.AttributeAccessor
getLocationAccessor()
INTERNAL: Returns this Descriptor's location accessor, if one is defined.NamespaceResolver
getNamespaceResolver()
PUBLIC: Return the NamespaceResolver associated with this descriptorNamespaceResolver
getNonNullNamespaceResolver()
java.util.Vector<java.lang.String>
getPrimaryKeyFieldNames()
PUBLIC: Return the names of all the primary keys.XMLSchemaReference
getSchemaReference()
PUBLIC: Return the SchemaReference associated with this descriptorprotected org.eclipse.persistence.internal.helper.DatabaseField
getTypedField(java.util.StringTokenizer stringTokenizer)
org.eclipse.persistence.internal.helper.DatabaseField
getTypedField(org.eclipse.persistence.internal.helper.DatabaseField field)
INTERNAL: searches first descriptor than its ReturningPolicy for an equal fieldboolean
hasReferenceMappings()
INTERNAL: Returns true if any of the mappings on this descriptor are key-based reference mappings.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 (because they require review); but not by XML aggregate descriptors.boolean
isLazilyInitialized()
If true, the descriptor may be lazily initialized.boolean
isResultAlwaysXMLRoot()
boolean
isSequencedObject()
INTERNAL:boolean
isWrapper()
boolean
isXMLDescriptor()
PUBLIC: Return if the descriptor maps to XML.DatabaseMapping
newAggregateCollectionMapping()
Return a new aggregate collection/element collection mapping for this type of descriptor.AggregateMapping
newAggregateMapping()
Return a new aggregate/embedded mapping for this type of descriptor.DatabaseMapping
newDirectCollectionMapping()
Return a new direct collection/element collection mapping for this type of descriptor.AbstractDirectMapping
newDirectMapping()
Return a new direct/basic mapping for this type of descriptor.void
postInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Post initializations after mappings are initialized.void
preInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Allow the descriptor to initialize any dependencies on this session.protected void
preInitializeInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session)
Hook together the inheritance policy tree.boolean
requiresInitialization(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: XML descriptors are initialized normally, since they do not need to be cloned by XML aggregate mappings.void
setDefaultRootElement(java.lang.String newDefaultRootElement)
PUBLIC: Return the default root element name for the ClassDescriptor This value is stored in place of a table name This value is mandatory for all root objectsvoid
setDefaultRootElementField(XMLField xmlField)
void
setDefaultRootElementType(javax.xml.namespace.QName type)
The default root element type string will be stored until initialization - a QName will be created and stored on the default root element field during initialize.void
setIsWrapper(boolean value)
void
setLazilyInitialized(boolean shouldLazyInitiailize)
Specify in the descriptor may be lazily initialized.void
setLocationAccessor(AttributeAccessor value)
INTERNAL: Set this Descriptor's location accessor.void
setNamespaceResolver(NamespaceResolver newNamespaceResolver)
PUBLIC: Set the NamespaceResolver to associate with this descriptorvoid
setPrimaryKeyFields(java.util.List<org.eclipse.persistence.internal.helper.DatabaseField> thePrimaryKeyFields)
INTERNAL: Set the primary key fieldsvoid
setResultAlwaysXMLRoot(boolean resultAlwaysXMLRoot)
void
setSchemaReference(XMLSchemaReference newSchemaReference)
PUBLIC: Set the SchemaReference to associate with this descriptorvoid
setSequencedObject(boolean isSequenced)
void
setShouldPreserveDocument(boolean shouldPreserveDocument)
PUBLIC: Specifies that object built from this descriptor should retain any unmapped information from their original XML Document when being written back out.void
setTableNames(java.util.Vector tableNames)
PUBLIC: Specify the all table names for the class of objects the receiver describes.void
setTables(java.util.Vector<org.eclipse.persistence.internal.helper.DatabaseTable> theTables)
INTERNAL: Sets the tablesboolean
shouldPreserveDocument()
PUBLIC: Return if unmapped information from the XML document should be maintained for this descriptor By default unmapped data is not preserved.boolean
shouldWrapObject(java.lang.Object object, java.lang.String elementNamespaceUri, java.lang.String elementLocalName, java.lang.String elementPrefix, boolean isNamespaceAware)
INTERNAL:protected void
validateMappingType(DatabaseMapping mapping)
java.lang.Object
wrapObjectInXMLRoot(java.lang.Object object, java.lang.String elementNamespaceUri, java.lang.String elementLocalName, java.lang.String elementPrefix, boolean forceWrap, boolean isNamespaceAware, XMLUnmarshaller xmlUnmarshaller)
INTERNAL: Determines the appropriate object to return from the unmarshal call.java.lang.Object
wrapObjectInXMLRoot(java.lang.Object object, java.lang.String elementNamespaceUri, java.lang.String elementLocalName, java.lang.String elementPrefix, java.lang.String encoding, java.lang.String version, boolean forceWrap, boolean isNamespaceAware, XMLUnmarshaller unmarshaller)
INTERNAL:java.lang.Object
wrapObjectInXMLRoot(org.eclipse.persistence.internal.oxm.record.UnmarshalRecord unmarshalRecord, boolean forceWrap)
INTERNAL: Determines the appropriate object to return from the unmarshal call.-
Methods inherited from class org.eclipse.persistence.descriptors.ClassDescriptor
addAbstractQueryKey, addCascadeLockingPolicy, addConstraintDependencies, addConstraintDependency, addDirectQueryKey, addForeignKeyFieldForMultipleTable, addForeignKeyFieldNameForMultipleTable, addMapping, addMappingsPostCalculateChanges, addMappingsPostCalculateChangesOnDeleted, addPreDeleteMapping, addQueryKey, addTable, addTableName, addUnconvertedProperty, adjustMultipleTableInsertOrder, alwaysConformResultsInUnitOfWork, alwaysRefreshCache, alwaysRefreshCacheOnRemote, applyAmendmentMethod, applyAmendmentMethod, arePrimaryKeyFields, assignDefaultValues, buildBatchCriteriaByPK, buildCallFromStatement, buildField, buildFieldValueFromForeignKeys, buildFieldValueFromNestedRow, checkDatabase, checkInheritanceTreeAggregateSettings, clearReferencingClasses, clone, createCopyPolicy, createInstantiationPolicy, createMultipleTableInsertOrder, createMultipleTableInsertOrderFromComparison, createTableComparison, createTableOrder, descriptorIsAggregate, descriptorIsAggregateCollection, descriptorIsForInterface, descriptorIsNormal, disableCacheHits, disableCacheHitsOnRemote, dontAlwaysConformResultsInUnitOfWork, dontAlwaysRefreshCache, dontAlwaysRefreshCacheOnRemote, dontDisableCacheHits, dontDisableCacheHitsOnRemote, dontOnlyRefreshCacheIfNewerVersion, getAccessorTree, getAdditionalAggregateCollectionKeyFields, getAdditionalTablePrimaryKeyFields, getAdditionalWritableMapKeyFields, getAlias, getAllFields, getAllSelectionFields, getAllSelectionFields, getAmendmentClass, getAmendmentClassName, getAmendmentMethodName, getAttributeGroup, getAttributeGroups, getCacheInterceptorClass, getCacheInterceptorClassName, getCacheInvalidationPolicy, getCacheIsolation, getCacheKeyType, getCachePolicy, getCacheSynchronizationType, getCascadeLockingPolicies, getCMPPolicy, getConstraintDependencies, getCopyPolicy, getCopyPolicyClassName, getDefaultDeleteObjectQueryRedirector, getDefaultFetchGroup, getDefaultInsertObjectQueryRedirector, getDefaultQueryRedirector, getDefaultReadAllQueryRedirector, getDefaultReadObjectQueryRedirector, getDefaultReportQueryRedirector, getDefaultTable, getDefaultUpdateObjectQueryRedirector, getDerivesIdMappinps, getDescriptorCustomizerClassName, getDescriptorEventManager, getDescriptorInheritancePolicy, getDescriptorQueryManager, getDescriptorType, getDescriptorTypeValue, getEventManager, getFetchGroupManager, getFields, getForeignKeyValuesForCaching, getFullyMergeEntity, getHistoryPolicy, getIdentityMapClass, getIdentityMapSize, getIdValidation, getInheritancePolicyOrNull, getInstantiationPolicy, getInterfacePolicy, getInterfacePolicyOrNull, getJavaClass, getJavaClassName, getLockableMappings, getMappingForAttributeName, getMappings, getMappingsPostCalculateChanges, getMappingsPostCalculateChangesOnDeleted, getMultipleTableForeignKeyAssociations, getMultipleTableForeignKeys, getMultipleTableInsertOrder, getMultipleTablePrimaryKeyAssociations, getMultitenantPolicy, getObjectBuilder, getObjectChangePolicy, getObjectChangePolicyInternal, getOptimisticLockingPolicy, getPartitioningPolicy, getPartitioningPolicyName, getPreDeleteMappings, getPrimaryKeyFields, getPrimaryKeyIdValidations, getProperties, getProperty, getQueryKeyNamed, getQueryKeys, getQueryManager, getRemoteIdentityMapClass, getRemoteIdentityMapSize, getReturnFieldsToGenerateInsert, getReturnFieldsToGenerateUpdate, getReturnFieldsToMergeInsert, getReturnFieldsToMergeUpdate, getReturningPolicies, getReturningPolicy, getRootDescriptor, getSelectionFields, getSelectionFields, getSequence, getSequenceNumberField, getSequenceNumberFieldName, getSequenceNumberName, getSerializedObjectPolicy, getSessionName, getTable, getTableName, getTableNames, getTablePerClassPolicy, getTables, getUnconvertedProperties, getUnitOfWorkCacheIsolationLevel, getVirtualAttributeMethods, getWrapperPolicy, hasCascadeLockingPolicies, hasCMPPolicy, hasDependencyOnParts, hasDerivedId, hasEventManager, hasFetchGroupManager, hasInheritance, hasInterfacePolicy, hasMappingsPostCalculateChanges, hasMappingsPostCalculateChangesOnDeleted, hasMultipleTableConstraintDependecy, hasMultipleTables, hasMultitenantPolicy, hasNestedIdentityReference, hasNoncacheableMappings, hasPessimisticLockingPolicy, hasPreDeleteMappings, hasPrivatelyOwnedParts, hasQueryKeyOrMapping, hasRelationships, hasRelationshipsExceptBackpointer, hasReturningPolicies, hasReturningPolicy, hasSerializedObjectPolicy, hasSimplePrimaryKey, hasTablePerClassPolicy, hasTablePerMultitenantPolicy, hasTargetForeignKeyMapping, hasUnconvertedProperties, hasWrapperPolicy, initialize, initializeMultipleTablePrimaryKeyFields, initializeProperties, interfaceInitialization, isAbstract, isAggregateCollectionDescriptor, isAggregateDescriptor, isCascadeOnDeleteSetOnDatabaseOnSecondaryTables, isChildDescriptor, isDescriptorForInterface, isDescriptorTypeAggregate, isDescriptorTypeNormal, isEISDescriptor, isFullyInitialized, isInitialized, isInterfaceChildDescriptor, isInterfaceInitialized, isInvalid, isIsolated, isMultipleTableDescriptor, isNativeConnectionRequired, isObjectRelationalDataTypeDescriptor, isPrimaryKeySetAfterInsert, isProtectedIsolation, isRelationalDescriptor, isReturnTypeRequiredForReturningPolicy, isSharedIsolation, newManyToManyMapping, newManyToOneMapping, newOneToManyMapping, newOneToOneMapping, newUnidirectionalOneToManyMapping, notifyReferencingDescriptorsOfIsolation, onlyRefreshCacheIfNewerVersion, preInterfaceInitialization, prepareCascadeLockingPolicy, rehashFieldDependancies, reInitializeJoinedAttributes, remoteInitialization, removeMappingForAttributeName, removeProperty, selfValidationAfterInitialization, selfValidationBeforeInitialization, setAccessorTree, setAdditionalTablePrimaryKeyFields, setAdditionalTablePrimaryKeyFields, setAlias, setAllFields, setAmendmentClass, setAmendmentClassName, setAmendmentMethodName, setCacheable, setCacheInterceptorClass, setCacheInterceptorClassName, setCacheInvalidationPolicy, setCacheIsolation, setCacheKeyType, setCachePolicy, setCacheSynchronizationType, setCMPPolicy, setConstraintDependencies, setCopyPolicy, setCopyPolicyClassName, setDefaultDeleteObjectQueryRedirector, setDefaultDeleteObjectQueryRedirectorClassName, setDefaultInsertObjectQueryRedirector, setDefaultInsertObjectQueryRedirectorClassName, setDefaultQueryRedirector, setDefaultQueryRedirectorClassName, setDefaultReadAllQueryRedirector, setDefaultReadAllQueryRedirectorClassName, setDefaultReadObjectQueryRedirector, setDefaultReadObjectQueryRedirectorClassName, setDefaultReportQueryRedirector, setDefaultReportQueryRedirectorClassName, setDefaultTable, setDefaultTableName, setDefaultUpdateObjectQueryRedirector, setDefaultUpdateObjectQueryRedirectorClassName, setDescriptorCustomizerClassName, setDescriptorType, setDescriptorTypeValue, setEventManager, setExistenceChecking, setFetchGroupManager, setFields, setForeignKeyFieldNamesForMultipleTable, setFullyMergeEntity, setHasMultipleTableConstraintDependecy, setHasRelationships, setHasSimplePrimaryKey, setHistoryPolicy, setIdentityMapClass, setIdentityMapSize, setIdValidation, setInheritancePolicy, setInitializationStage, setInstantiationPolicy, setInterfaceInitializationStage, setInterfacePolicy, setInternalDefaultTable, setInternalDefaultTable, setIsCascadeOnDeleteSetOnDatabaseOnSecondaryTables, setIsIsolated, setIsNativeConnectionRequired, setJavaClass, setJavaClassName, setJavaInterface, setJavaInterfaceName, setLockableMappings, setMappings, setMultipleTableForeignKeys, setMultipleTableInsertOrder, setMultitenantPolicy, setObjectBuilder, setObjectChangePolicy, setOptimisticLockingPolicy, setPartitioningPolicy, setPartitioningPolicyName, setPrimaryKeyFieldName, setPrimaryKeyFieldNames, setPrimaryKeyIdValidations, setProperties, setProperty, setQueryKeys, setQueryManager, setReadOnly, setRemoteIdentityMapClass, setRemoteIdentityMapSize, setReturningPolicy, setSequence, setSequenceNumberField, setSequenceNumberFieldName, setSequenceNumberName, setSerializedObjectPolicy, setSessionName, setShouldAcquireCascadedLocks, setShouldAlwaysConformResultsInUnitOfWork, setShouldAlwaysRefreshCache, setShouldAlwaysRefreshCacheOnRemote, setShouldBeReadOnly, setShouldDisableCacheHits, setShouldDisableCacheHitsOnRemote, setShouldLockForClone, setShouldOnlyRefreshCacheIfNewerVersion, setShouldOrderMappings, setShouldRegisterResultsInUnitOfWork, setTableName, setTablePerClassPolicy, setTableQualifier, setUnitOfWorkCacheIsolationLevel, setVirtualAttributeMethods, setWrapperPolicy, shouldAcquireCascadedLocks, shouldAlwaysConformResultsInUnitOfWork, shouldAlwaysRefreshCache, shouldAlwaysRefreshCacheOnRemote, shouldBeReadOnly, shouldDisableCacheHits, shouldDisableCacheHitsOnRemote, shouldIsolateObjectsInUnitOfWork, shouldIsolateObjectsInUnitOfWorkEarlyTransaction, shouldIsolateProtectedObjectsInUnitOfWork, shouldLockForClone, shouldOnlyRefreshCacheIfNewerVersion, shouldOrderMappings, shouldRegisterResultsInUnitOfWork, shouldUseAdditionalJoinExpression, shouldUseCacheIdentityMap, shouldUseFullChangeSetsForNewObjects, shouldUseFullIdentityMap, shouldUseHardCacheWeakIdentityMap, shouldUseNoIdentityMap, shouldUseRemoteCacheIdentityMap, shouldUseRemoteFullIdentityMap, shouldUseRemoteHardCacheWeakIdentityMap, shouldUseRemoteNoIdentityMap, shouldUseRemoteSoftCacheWeakIdentityMap, shouldUseRemoteSoftIdentityMap, shouldUseRemoteWeakIdentityMap, shouldUseSessionCacheInUnitOfWorkEarlyTransaction, shouldUseSoftCacheWeakIdentityMap, shouldUseSoftIdentityMap, shouldUseWeakIdentityMap, supportsChangeTracking, toggleAdditionalTablePrimaryKeyFields, toString, useAllFieldsLocking, useCacheIdentityMap, useChangedFieldsLocking, useCloneCopyPolicy, useCloneCopyPolicy, useDefaultConstructorInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFactoryInstantiationPolicy, useFullIdentityMap, useHardCacheWeakIdentityMap, useInstantiationCopyPolicy, useMethodInstantiationPolicy, useNoIdentityMap, usePropertyAccessForWeaving, useRemoteCacheIdentityMap, useRemoteFullIdentityMap, useRemoteHardCacheWeakIdentityMap, useRemoteNoIdentityMap, useRemoteSoftCacheWeakIdentityMap, useRemoteSoftIdentityMap, useRemoteWeakIdentityMap, useSelectedFieldsLocking, usesFieldLocking, useSoftCacheWeakIdentityMap, useSoftIdentityMap, usesOptimisticLocking, usesPropertyAccessForWeaving, usesSequenceNumbers, usesVersionLocking, useTimestampLocking, useTimestampLocking, useVersionLocking, useVersionLocking, useWeakIdentityMap, validateAfterInitialization, validateBeforeInitialization, verifyMultipleTableInsertOrder, verifyMultipleTablesForeignKeysTables, verifyTableQualifiers
-
Methods inherited from class org.eclipse.persistence.core.descriptors.CoreDescriptor
addAttributeGroup
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.Descriptor
addMapping, getAlias, getAttributeGroup, getInheritancePolicyOrNull, getInstantiationPolicy, getJavaClass, getJavaClassName, getMappingForAttributeName, getMappings, getObjectBuilder, getPrimaryKeyFields, getTableNames, getTables, hasInheritance, setInstantiationPolicy, setJavaClass, setJavaClassName, setProperties
-
-
-
-
Method Detail
-
getDefaultRootElement
public java.lang.String getDefaultRootElement()
PUBLIC: Return the default root element name for the ClassDescriptor This value is stored in place of a table name This value is mandatory for all root objects- Specified by:
getDefaultRootElement
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Returns:
- the default root element specified on this ClassDescriptor
-
shouldPreserveDocument
public boolean shouldPreserveDocument()
PUBLIC: Return if unmapped information from the XML document should be maintained for this descriptor By default unmapped data is not preserved.- Specified by:
shouldPreserveDocument
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Returns:
- if this descriptor should preserve unmapped data
-
setShouldPreserveDocument
public void setShouldPreserveDocument(boolean shouldPreserveDocument)
PUBLIC: Specifies that object built from this descriptor should retain any unmapped information from their original XML Document when being written back out. By default unmapped data is not preserved.- Parameters:
shouldPreserveDocument
- if this descriptor should preserve unmapped data
-
addRootElement
public void addRootElement(java.lang.String rootElementName)
PUBLIC: Add a root element name for the Descriptor This value is stored in place of a table name- Specified by:
addRootElement
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Parameters:
rootElementName
- a root element to specify on this Descriptor
-
setDefaultRootElement
public void setDefaultRootElement(java.lang.String newDefaultRootElement)
PUBLIC: Return the default root element name for the ClassDescriptor This value is stored in place of a table name This value is mandatory for all root objects- Specified by:
setDefaultRootElement
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Parameters:
newDefaultRootElement
- the default root element to specify on this ClassDescriptor
-
getNamespaceResolver
public NamespaceResolver getNamespaceResolver()
PUBLIC: Return the NamespaceResolver associated with this descriptor- Specified by:
getNamespaceResolver
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Returns:
- the NamespaceResolver associated with this descriptor
- See Also:
NamespaceResolver
-
getNonNullNamespaceResolver
public NamespaceResolver getNonNullNamespaceResolver()
- Specified by:
getNonNullNamespaceResolver
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
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.- Specified by:
getInheritancePolicy
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Overrides:
getInheritancePolicy
in classClassDescriptor
- Returns:
- the InheritancePolicy associated with this descriptor
-
setNamespaceResolver
public void setNamespaceResolver(NamespaceResolver newNamespaceResolver)
PUBLIC: Set the NamespaceResolver to associate with this descriptor- Specified by:
setNamespaceResolver
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Parameters:
newNamespaceResolver
- the NamespaceResolver to associate with this descriptor- See Also:
NamespaceResolver
-
getSchemaReference
public XMLSchemaReference getSchemaReference()
PUBLIC: Return the SchemaReference associated with this descriptor- Specified by:
getSchemaReference
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Returns:
- the SchemaReference associated with this descriptor
- See Also:
org.eclipse.persistence.oxm.schema
-
setSchemaReference
public void setSchemaReference(XMLSchemaReference newSchemaReference)
PUBLIC: Set the SchemaReference to associate with this descriptor- Specified by:
setSchemaReference
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Parameters:
newSchemaReference
- the SchemaReference to associate with this descriptor- See Also:
org.eclipse.persistence.oxm.schema
-
isXMLDescriptor
public boolean isXMLDescriptor()
PUBLIC: Return if the descriptor maps to XML.- Overrides:
isXMLDescriptor
in classClassDescriptor
-
isLazilyInitialized
public boolean isLazilyInitialized()
If true, the descriptor may be lazily initialized. This is useful if the descriptor may not get used.- Specified by:
isLazilyInitialized
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setLazilyInitialized
public void setLazilyInitialized(boolean shouldLazyInitiailize)
Specify in the descriptor may be lazily initialized. The default is false.
-
getPrimaryKeyFieldNames
public java.util.Vector<java.lang.String> getPrimaryKeyFieldNames()
Description copied from class:ClassDescriptor
PUBLIC: Return the names of all the primary keys.- Specified by:
getPrimaryKeyFieldNames
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Overrides:
getPrimaryKeyFieldNames
in classClassDescriptor
-
validateMappingType
protected void validateMappingType(DatabaseMapping mapping)
- Overrides:
validateMappingType
in classClassDescriptor
-
buildNestedRowFromFieldValue
public org.eclipse.persistence.internal.sessions.AbstractRecord buildNestedRowFromFieldValue(java.lang.Object fieldValue)
INTERNAL: Build(if necessary) and return the nested XMLRecord from the specified field value. The field value should be an XMLRecord or and XMLElement- Overrides:
buildNestedRowFromFieldValue
in classClassDescriptor
-
buildNestedRowsFromFieldValue
public java.util.Vector buildNestedRowsFromFieldValue(java.lang.Object fieldValue, org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Build(if necessary) and return a Vector of the nested XMLRecords from the specified field value. The field value should be a Vector, an XMLRecord, or an XMLElement- Overrides:
buildNestedRowsFromFieldValue
in classClassDescriptor
-
newDirectMapping
public AbstractDirectMapping newDirectMapping()
Return a new direct/basic mapping for this type of descriptor.- Overrides:
newDirectMapping
in classClassDescriptor
-
newAggregateMapping
public AggregateMapping newAggregateMapping()
Return a new aggregate/embedded mapping for this type of descriptor.- Overrides:
newAggregateMapping
in classClassDescriptor
-
newAggregateCollectionMapping
public DatabaseMapping newAggregateCollectionMapping()
Return a new aggregate collection/element collection mapping for this type of descriptor.- Overrides:
newAggregateCollectionMapping
in classClassDescriptor
-
newDirectCollectionMapping
public DatabaseMapping newDirectCollectionMapping()
Return a new direct collection/element collection mapping for this type of descriptor.- Overrides:
newDirectCollectionMapping
in classClassDescriptor
-
addDirectMapping
public DatabaseMapping addDirectMapping(java.lang.String attributeName, java.lang.String xpathString)
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 classClassDescriptor
- Parameters:
attributeName
- the name of an instance variable of the class which the receiver describes.xpathString
- the xpath 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 xpathString)
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 classClassDescriptor
-
addPrimaryKeyFieldName
public void addPrimaryKeyFieldName(java.lang.String fieldName)
Description copied from class:ClassDescriptor
PUBLIC: Specify the primary key field of the descriptors table. This should be called for each field that makes up the primary key of the table. If the descriptor has many tables, this must be the primary key in the first table, if the other tables have the same primary key nothing else is required, otherwise a primary key/foreign key field mapping must be provided for each of the other tables.- Overrides:
addPrimaryKeyFieldName
in classClassDescriptor
- See Also:
ClassDescriptor.addForeignKeyFieldNameForMultipleTable(String, String)
-
addPrimaryKeyField
public void addPrimaryKeyField(org.eclipse.persistence.internal.helper.DatabaseField field)
Description copied from class:ClassDescriptor
ADVANCED: Specify the primary key field of the descriptors table. This should be called for each field that makes up the primary key of the table. This can be used for advanced field types, such as XML nodes, or to set the field type.- Specified by:
addPrimaryKeyField
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Overrides:
addPrimaryKeyField
in classClassDescriptor
-
setPrimaryKeyFields
public void setPrimaryKeyFields(java.util.List<org.eclipse.persistence.internal.helper.DatabaseField> thePrimaryKeyFields)
Description copied from class:ClassDescriptor
INTERNAL: Set the primary key fields- Overrides:
setPrimaryKeyFields
in classClassDescriptor
- See Also:
ClassDescriptor.addPrimaryKeyFieldName(String)
-
buildDirectValuesFromFieldValue
public java.util.Vector buildDirectValuesFromFieldValue(java.lang.Object fieldValue) throws DatabaseException
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 classClassDescriptor
- Throws:
DatabaseException
-
buildFieldValueFromDirectValues
public java.lang.Object buildFieldValueFromDirectValues(java.util.Vector directValues, java.lang.String elementDataTypeName, org.eclipse.persistence.internal.sessions.AbstractSession session) throws DatabaseException
INTERNAL: Build the appropriate field value for the specified set of direct values. The database better be expecting a Vector.- Overrides:
buildFieldValueFromDirectValues
in classClassDescriptor
- 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 classClassDescriptor
- Throws:
DatabaseException
-
buildField
public org.eclipse.persistence.internal.helper.DatabaseField buildField(java.lang.String fieldName)
INTERNAL: A DatabaseField is built from the given field name.- Overrides:
buildField
in classClassDescriptor
-
buildField
public org.eclipse.persistence.internal.helper.DatabaseField buildField(org.eclipse.persistence.internal.helper.DatabaseField field)
INTERNAL: This is used only in initialization.- Overrides:
buildField
in classClassDescriptor
-
initializeAggregateInheritancePolicy
public void initializeAggregateInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: This is needed by regular aggregate descriptors (because they require review); but not by XML aggregate descriptors.- Overrides:
initializeAggregateInheritancePolicy
in classClassDescriptor
-
setTableNames
public void setTableNames(java.util.Vector tableNames)
Description copied from class:ClassDescriptor
PUBLIC: Specify the all table names for the class of objects the receiver describes. If the table has a qualifier it should be specified using the dot notation, (i.e. "userid.employee"). This method is used for multiple tables- Overrides:
setTableNames
in classClassDescriptor
-
setTables
public void setTables(java.util.Vector<org.eclipse.persistence.internal.helper.DatabaseTable> theTables)
INTERNAL: Sets the tables- Overrides:
setTables
in classClassDescriptor
-
preInitialize
public void preInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
INTERNAL: Allow the descriptor to initialize any dependencies on this session.- Overrides:
preInitialize
in classClassDescriptor
- Throws:
DescriptorException
-
preInitializeInheritancePolicy
protected void preInitializeInheritancePolicy(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
Description copied from class:ClassDescriptor
Hook together the inheritance policy tree.- Overrides:
preInitializeInheritancePolicy
in classClassDescriptor
- Throws:
DescriptorException
-
postInitialize
public void postInitialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
INTERNAL: Post initializations after mappings are initialized.- Overrides:
postInitialize
in classClassDescriptor
- Throws:
DescriptorException
-
initialize
public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
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 classClassDescriptor
- Throws:
DescriptorException
-
requiresInitialization
public boolean requiresInitialization(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: XML descriptors are initialized normally, since they do not need to be cloned by XML aggregate mappings.- Overrides:
requiresInitialization
in classClassDescriptor
-
extractDefaultTable
protected org.eclipse.persistence.internal.helper.DatabaseTable extractDefaultTable()
Aggregates use a dummy table as default.- Overrides:
extractDefaultTable
in classClassDescriptor
-
wrapObjectInXMLRoot
public java.lang.Object wrapObjectInXMLRoot(org.eclipse.persistence.internal.oxm.record.UnmarshalRecord unmarshalRecord, boolean forceWrap)
INTERNAL: Determines the appropriate object to return from the unmarshal call. The method will either return the object created in the xmlReader.parse() call or an instance of Root. An Root instance will be returned if the DOMRecord element being unmarshalled does not equal the descriptor's default root element.- Specified by:
wrapObjectInXMLRoot
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Parameters:
unmarshalRecord
-- Returns:
- object
-
wrapObjectInXMLRoot
public java.lang.Object wrapObjectInXMLRoot(java.lang.Object object, java.lang.String elementNamespaceUri, java.lang.String elementLocalName, java.lang.String elementPrefix, boolean forceWrap, boolean isNamespaceAware, XMLUnmarshaller xmlUnmarshaller)
INTERNAL: Determines the appropriate object to return from the unmarshal call. The method will either return the object created in the xmlReader.parse() call or an instance of Root. An Root instance will be returned if the DOMRecord element being unmarshalled does not equal the descriptor's default root element.- Specified by:
wrapObjectInXMLRoot
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Parameters:
object
-elementNamespaceUri
-elementLocalName
-elementPrefix
-- Returns:
- object
-
wrapObjectInXMLRoot
public java.lang.Object wrapObjectInXMLRoot(java.lang.Object object, java.lang.String elementNamespaceUri, java.lang.String elementLocalName, java.lang.String elementPrefix, java.lang.String encoding, java.lang.String version, boolean forceWrap, boolean isNamespaceAware, XMLUnmarshaller unmarshaller)
INTERNAL:- Specified by:
wrapObjectInXMLRoot
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Returns:
-
shouldWrapObject
public boolean shouldWrapObject(java.lang.Object object, java.lang.String elementNamespaceUri, java.lang.String elementLocalName, java.lang.String elementPrefix, boolean isNamespaceAware)
INTERNAL:- Returns:
-
getDefaultRootElementField
public XMLField getDefaultRootElementField()
- Specified by:
getDefaultRootElementField
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setDefaultRootElementField
public void setDefaultRootElementField(XMLField xmlField)
-
getDefaultRootElementType
public javax.xml.namespace.QName getDefaultRootElementType()
- Specified by:
getDefaultRootElementType
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setDefaultRootElementType
public void setDefaultRootElementType(javax.xml.namespace.QName type)
The default root element type string will be stored until initialization - a QName will be created and stored on the default root element field during initialize.- Parameters:
type
-
-
isSequencedObject
public boolean isSequencedObject()
INTERNAL:Indicates if the Object mapped by this descriptor is a sequenced data object and should be marshalled accordingly.
- Specified by:
isSequencedObject
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setSequencedObject
public void setSequencedObject(boolean isSequenced)
-
isWrapper
public boolean isWrapper()
- Specified by:
isWrapper
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setIsWrapper
public void setIsWrapper(boolean value)
-
isResultAlwaysXMLRoot
public boolean isResultAlwaysXMLRoot()
- Specified by:
isResultAlwaysXMLRoot
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setResultAlwaysXMLRoot
public void setResultAlwaysXMLRoot(boolean resultAlwaysXMLRoot)
- Specified by:
setResultAlwaysXMLRoot
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
hasReferenceMappings
public boolean hasReferenceMappings()
INTERNAL: Returns true if any of the mappings on this descriptor are key-based reference mappings.
-
getTypedField
public org.eclipse.persistence.internal.helper.DatabaseField getTypedField(org.eclipse.persistence.internal.helper.DatabaseField field)
Description copied from class:ClassDescriptor
INTERNAL: searches first descriptor than its ReturningPolicy for an equal field- Specified by:
getTypedField
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
- Overrides:
getTypedField
in classClassDescriptor
-
getTypedField
protected org.eclipse.persistence.internal.helper.DatabaseField getTypedField(java.util.StringTokenizer stringTokenizer)
-
getLocationAccessor
public AttributeAccessor getLocationAccessor()
INTERNAL: Returns this Descriptor's location accessor, if one is defined.- Specified by:
getLocationAccessor
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
setLocationAccessor
public void setLocationAccessor(AttributeAccessor value)
INTERNAL: Set this Descriptor's location accessor.- Specified by:
setLocationAccessor
in interfaceorg.eclipse.persistence.internal.oxm.mappings.Descriptor<AttributeAccessor,DatabaseMapping,org.eclipse.persistence.internal.helper.DatabaseField,InheritancePolicy,org.eclipse.persistence.internal.descriptors.InstantiationPolicy,NamespaceResolver,org.eclipse.persistence.internal.descriptors.ObjectBuilder,org.eclipse.persistence.internal.helper.DatabaseTable,org.eclipse.persistence.internal.oxm.record.UnmarshalRecord,XMLUnmarshaller>
-
convertClassNamesToClasses
public void convertClassNamesToClasses(java.lang.ClassLoader classLoader)
INTERNAL: Convert all the class-name-based settings in this Descriptor to actual class-based settings. This method is used when converting a project that has been built with class names to a project with classes.- Overrides:
convertClassNamesToClasses
in classClassDescriptor
- Parameters:
classLoader
-
-
-