Module org.eclipse.persistence.core
Class XMLVariableXPathCollectionMapping
java.lang.Object
org.eclipse.persistence.core.mappings.CoreMapping<AttributeAccessor,AbstractSession,ContainerPolicy,ClassDescriptor,DatabaseField>
org.eclipse.persistence.mappings.DatabaseMapping
org.eclipse.persistence.mappings.AggregateMapping
org.eclipse.persistence.mappings.foundation.AbstractCompositeCollectionMapping
org.eclipse.persistence.oxm.mappings.XMLCompositeCollectionMapping
org.eclipse.persistence.oxm.mappings.XMLVariableXPathCollectionMapping
- All Implemented Interfaces:
Serializable
,Cloneable
,CompositeCollectionMapping<AbstractSession,
,AttributeAccessor, ContainerPolicy, Converter, ClassDescriptor, DatabaseField, XMLMarshaller, Session, UnmarshalKeepAsElementPolicy, XMLUnmarshaller, XMLRecord> CompositeObjectMapping<AbstractSession,
,AttributeAccessor, ContainerPolicy, Converter, ClassDescriptor, DatabaseField, XMLMarshaller, Session, UnmarshalKeepAsElementPolicy, XMLUnmarshaller, XMLRecord> Mapping<AbstractSession,
,AttributeAccessor, ContainerPolicy, ClassDescriptor, DatabaseField, XMLRecord> VariableXPathCollectionMapping<AbstractSession,
,AttributeAccessor, ContainerPolicy, Converter, ClassDescriptor, DatabaseField, XMLMarshaller, Session, XMLUnmarshaller, XMLRecord> VariableXPathObjectMapping<AbstractSession,
,AttributeAccessor, ContainerPolicy, Converter, ClassDescriptor, DatabaseField, XMLMarshaller, Session, XMLUnmarshaller, XMLRecord> XMLContainerMapping
,XMLConverterMapping<XMLMarshaller,
,Session, XMLUnmarshaller> ContainerMapping
,ArrayCollectionMapping
,XMLMapping
,XMLNillableMapping
public class XMLVariableXPathCollectionMapping
extends XMLCompositeCollectionMapping
implements VariableXPathCollectionMapping<AbstractSession,AttributeAccessor,ContainerPolicy,Converter,ClassDescriptor,DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>, XMLMapping, XMLContainerMapping
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.persistence.mappings.DatabaseMapping
DatabaseMapping.WriteType
-
Field Summary
Fields inherited from class org.eclipse.persistence.mappings.foundation.AbstractCompositeCollectionMapping
converter, field
Fields inherited from class org.eclipse.persistence.mappings.AggregateMapping
hasNestedIdentityReference, referenceClass, referenceClassName, referenceDescriptor
Fields inherited from class org.eclipse.persistence.mappings.DatabaseMapping
attributeAccessor, attributeName, derivedIdMapping, derivesId, descriptor, fields, isCacheable, isInSopObject, isJPAId, isLazy, isMapKeyMapping, isOptional, isPrimaryKeyMapping, isReadOnly, isRemotelyInitialized, mapsIdValue, NO_FIELDS, NO_WEIGHT, properties, unconvertedProperties, weight, WEIGHT_AGGREGATE, WEIGHT_DIRECT, WEIGHT_TO_ONE, WEIGHT_TRANSFORM
Fields inherited from interface org.eclipse.persistence.internal.oxm.mappings.XMLContainerMapping
EMPTY_CONTAINER_DEFAULT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected AbstractRecord
buildCompositeRow
(XMLField variableField, Object attributeValue, AbstractSession session, AbstractRecord parentRow, DatabaseMapping.WriteType writeType) protected Vector
Return the fields handled by the mapping.INTERNAL: Returns a vector of all the fields this mapping represents.getXPathFragmentForValue
(Object obj, NamespaceResolver nr, boolean isNamespaceAware, char sep) void
initialize
(AbstractSession session) INTERNAL: The mapping is initialized with the given session.protected void
protected void
boolean
INTERNAL:boolean
void
setAttribute
(boolean isAttribute) void
setVariableAttributeAccessor
(AttributeAccessor variableAttributeAccessor) void
setVariableAttributeName
(String variableAttributeName) void
setVariableGetMethodName
(String variableGetMethodName) void
setVariableSetMethodName
(String variableSetMethodName) void
useMapClass
(String concreteContainerClassName) void
useMapClassName
(String concreteContainerClassName, String methodName) PUBLIC: Configure the mapping to use an instance of the specified container class to hold the target objects.void
writeFromObjectIntoRow
(Object object, AbstractRecord row, AbstractSession session, DatabaseMapping.WriteType writeType) INTERNAL:Methods inherited from class org.eclipse.persistence.oxm.mappings.XMLCompositeCollectionMapping
buildCompositeObject, buildCompositeRow, buildCompositeRowForDescriptor, buildObjectFromNestedRow, convertClassNamesToClasses, convertDataValueToObjectValue, convertObjectValueToDataValue, getContainerAccessor, getContainerAttributeName, getContainerGetMethodName, getContainerSetMethodName, getDescriptor, getInverseReferenceMapping, getKeepAsElementPolicy, getNullPolicy, getReferenceDescriptor, getReferenceDescriptor, getReuseContainer, getWrapperNullPolicy, getXPath, isDefaultEmptyContainer, isWriteOnly, isXMLMapping, preInitialize, setAttributeValueInObject, setContainerAccessor, setContainerAttributeName, setContainerGetMethodName, setContainerSetMethodName, setDefaultEmptyContainer, setIsWriteOnly, setKeepAsElementPolicy, setNullPolicy, setReuseContainer, setWrapperNullPolicy, setXPath, valueFromRow, writeSingleValue
Methods inherited from class org.eclipse.persistence.mappings.foundation.AbstractCompositeCollectionMapping
buildAddedElementFromChangeSet, buildBackupClonePart, buildChangeSet, buildClonePart, buildCopyOfAttributeValue, buildElementFromChangeSet, buildElementFromElement, buildExpression, buildRemovedElementFromChangeSet, cascadeDiscoverAndPersistUnregisteredNewObjects, cascadePerformRemoveIfRequired, cascadeRegisterNewIfRequired, compareElements, compareElementsForChange, compareForChange, compareObjects, convertToChangeRecord, createMapComponentFromRow, fixAttributeValue, getAttributeValueFromBackupClone, getContainerPolicy, getConverter, getField, getRealCollectionAttributeValueFromObject, getStructureName, hasConverter, isCollectionMapping, iterateOnAttributeValue, mapKeyHasChanged, mergeChangesIntoObject, mergeIntoObject, postDeleteAttributeValue, postInsertAttributeValue, postUpdateAttributeValue, preDeleteAttributeValue, preInsertAttributeValue, preUpdateAttributeValue, setContainerPolicy, setConverter, setField, simpleAddToCollectionChangeRecord, simpleRemoveFromCollectionChangeRecord, useCollectionClass, useCollectionClassName, useListClassName, useMapClass, verifyDeleteOfAttributeValue, writeFromObjectIntoRowForUpdate, writeFromObjectIntoRowWithChangeRecord, writeInsertFieldsIntoRow
Methods inherited from class org.eclipse.persistence.mappings.AggregateMapping
buildAggregateDeleteQuery, buildAggregateModifyQuery, buildAggregateWriteQuery, buildBackupClone, buildClone, buildCloneFromRow, buildClonePart, buildCopy, buildNewMergeInstanceOf, compareAttributeValues, executeEvent, fixObjectReferences, getObjectBuilder, getObjectBuilderForClass, getQueryManager, getReferenceClass, getReferenceClassName, getReferenceDescriptor, getReferenceDescriptor, hasNestedIdentityReference, isAggregateMapping, iterate, load, loadAll, mergeAttributeValue, postDelete, postInsert, postUpdate, preDelete, preInsert, preUpdate, remoteInitialization, setReferenceClass, setReferenceClassName, setReferenceDescriptor, updateChangeRecord, verifyDelete
Methods inherited from class org.eclipse.persistence.mappings.DatabaseMapping
addUnconvertedProperty, buildBackupCloneForPartObject, buildChangeRecord, buildCloneForPartObject, buildContainerClone, buildObjectJoinExpression, buildObjectJoinExpression, buildShallowOriginalFromRow, calculateDeferredChanges, cascadePerformRemovePrivateOwnedObjectFromChangeSetIfRequired, clone, cloneFields, collectQueryParameters, convertConverterClassNamesToClasses, createCloneValueHolder, derivesId, earlyPreDelete, extractNestedExpressions, extractNestedNonAggregateExpressions, fixRealObjectReferences, getAttributeAccessor, getAttributeClassification, getAttributeName, getAttributeValueFromObject, getDerivedIdMapping, getDescriptor, getFieldClassification, getGetMethodName, getMapsIdValue, getObjectCorrespondingTo, getOrderByNormalizedExpressions, getProperties, getProperty, getRealAttributeValueFromAttribute, getRealAttributeValueFromObject, getRelationshipPartner, getSelectFields, getSelectTables, getSetMethodName, getUnconvertedProperties, getValueFromRemoteValueHolder, getWeight, hasConstraintDependency, hasDependency, hasInverseConstraintDependency, hasMapsIdValue, hasRootExpressionThatShouldUseOuterJoin, hasUnconvertedProperties, instantiateAttribute, isAbstractColumnMapping, isAbstractCompositeDirectCollectionMapping, isAbstractCompositeObjectMapping, isAbstractDirectMapping, isAggregateCollectionMapping, isAggregateObjectMapping, isAttributeValueFromObjectInstantiated, isCacheable, isCandidateForPrivateOwnedRemoval, isCascadedLockingSupported, isChangeTrackingSupported, isCloningRequired, isDatabaseMapping, isDirectCollectionMapping, isDirectMapMapping, isDirectToFieldMapping, isDirectToXMLTypeMapping, isEISMapping, isElementCollectionMapping, isForeignReferenceMapping, isInAndOutSopObject, isInOnlySopObject, isInSopObject, isJoiningSupported, isJPAId, isLazy, isLockableMapping, isManyToManyMapping, isManyToOneMapping, isMapKeyMapping, isMultitenantPrimaryKeyMapping, isNestedTableMapping, isObjectReferenceMapping, isOneToManyMapping, isOneToOneMapping, isOptional, isOutOnlySopObject, isOutSopObject, isOwned, isPrimaryKeyMapping, isPrivateOwned, isReadOnly, isReferenceMapping, isRelationalMapping, isRemotelyInitialized, isStructureMapping, isTransformationMapping, isUnidirectionalOneToManyMapping, isUsingMethodAccess, isVariableOneToOneMapping, iterateOnRealAttributeValue, performDataModificationEvent, postCalculateChanges, postCalculateChangesOnDeleted, postInitialize, postInitializeSourceAndTargetExpressions, prepareCascadeLockingPolicy, readFromResultSetIntoObject, readFromRowIntoObject, readOnly, readWrite, recordPrivateOwnedRemovals, rehashFieldDependancies, remotelyInitialized, replaceValueHoldersIn, setAttributeAccessor, setAttributeName, setChangeListener, setDerivedIdMapping, setDerivesId, setDescriptor, setFields, setGetMethodName, setIsCacheable, setIsInAndOutSopObject, setIsInSopObject, setIsJPAId, setIsLazy, setIsMapKeyMapping, setIsOptional, setIsOutSopObject, setIsPrimaryKeyMapping, setIsReadOnly, setMapsIdValue, setProperties, setProperty, setRealAttributeValueInObject, setSetMethodName, setWeight, toString, updateCollectionChangeRecord, validateAfterInitialization, validateBeforeInitialization, valueFromObject, valueFromResultSet, valueFromRow, writeFromAttributeIntoRow, writeFromObjectIntoRowForShallowInsert, writeFromObjectIntoRowForShallowInsertWithChangeRecord, writeFromObjectIntoRowForUpdateAfterShallowInsert, writeFromObjectIntoRowForUpdateBeforeShallowDelete, writeFromObjectIntoRowForWhereClause, writeUpdateFieldsIntoRow
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.persistence.mappings.structures.ArrayCollectionMapping
getAttributeName, setRealAttributeValueInObject
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.CompositeCollectionMapping
useCollectionClass, useCollectionClassName
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.CompositeObjectMapping
getReferenceClass, getReferenceClassName, hasConverter, setConverter, setField, setReferenceClass, setReferenceClassName
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.Mapping
getAttributeAccessor, getAttributeClassification, getAttributeName, getAttributeValueFromObject, getContainerPolicy, getDescriptor, getField, getReferenceDescriptor, isAbstractCompositeDirectCollectionMapping, isAbstractCompositeObjectMapping, isAbstractDirectMapping, isCollectionMapping, isReadOnly, isReferenceMapping, isTransformationMapping, setAttributeAccessor, setAttributeName, setAttributeValueInObject, setGetMethodName, setIsReadOnly, setProperties, setSetMethodName
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping
setConverter, setIsWriteOnly, setReferenceClassName
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.XMLContainerMapping
getReuseContainer, getWrapperNullPolicy, isDefaultEmptyContainer, setDefaultEmptyContainer, setReuseContainer, setWrapperNullPolicy
Methods inherited from interface org.eclipse.persistence.internal.oxm.mappings.XMLConverterMapping
convertDataValueToObjectValue, convertObjectValueToDataValue
Methods inherited from interface org.eclipse.persistence.oxm.mappings.XMLMapping
convertClassNamesToClasses, isWriteOnly, setIsWriteOnly, writeSingleValue
-
Field Details
-
variableAttributeName
-
variableGetMethodName
-
variableSetMethodName
-
-
Constructor Details
-
XMLVariableXPathCollectionMapping
public XMLVariableXPathCollectionMapping()Default constructor.
-
-
Method Details
-
initialize
Description copied from class:XMLCompositeCollectionMapping
INTERNAL: The mapping is initialized with the given session. This mapping is fully initialized after this.- Overrides:
initialize
in classXMLCompositeCollectionMapping
- Throws:
DescriptorException
-
useMapClass
-
initializeMapContainerPolicy
- Overrides:
initializeMapContainerPolicy
in classXMLCompositeCollectionMapping
-
collectFields
Description copied from class:AbstractCompositeCollectionMapping
Return the fields handled by the mapping.- Overrides:
collectFields
in classAbstractCompositeCollectionMapping
- Returns:
- TODO
-
getFields
Description copied from class:DatabaseMapping
INTERNAL: Returns a vector of all the fields this mapping represents.- Overrides:
getFields
in classDatabaseMapping
- Returns:
- TODO
-
initializeReferenceDescriptorAndField
- Overrides:
initializeReferenceDescriptorAndField
in classXMLCompositeCollectionMapping
-
isAbstractCompositeCollectionMapping
public boolean isAbstractCompositeCollectionMapping()Description copied from class:AbstractCompositeCollectionMapping
INTERNAL:- Specified by:
isAbstractCompositeCollectionMapping
in interfaceMapping<AbstractSession,
AttributeAccessor, ContainerPolicy, ClassDescriptor, DatabaseField, XMLRecord> - Overrides:
isAbstractCompositeCollectionMapping
in classAbstractCompositeCollectionMapping
- Returns:
- TODO
-
getVariableAttributeName
-
setVariableAttributeName
-
getVariableGetMethodName
-
setVariableGetMethodName
-
getVariableSetMethodName
-
setVariableSetMethodName
-
getVariableAttributeAccessor
-
setVariableAttributeAccessor
-
writeFromObjectIntoRow
public void writeFromObjectIntoRow(Object object, AbstractRecord row, AbstractSession session, DatabaseMapping.WriteType writeType) throws DescriptorException Description copied from class:XMLCompositeCollectionMapping
INTERNAL:- Overrides:
writeFromObjectIntoRow
in classXMLCompositeCollectionMapping
- Throws:
DescriptorException
-
buildCompositeRow
protected AbstractRecord buildCompositeRow(XMLField variableField, Object attributeValue, AbstractSession session, AbstractRecord parentRow, DatabaseMapping.WriteType writeType) -
getXPathFragmentForValue
public XPathFragment getXPathFragmentForValue(Object obj, NamespaceResolver nr, boolean isNamespaceAware, char sep) -
isAttribute
public boolean isAttribute() -
setAttribute
public void setAttribute(boolean isAttribute) -
useMapClassName
Description copied from interface:ContainerMapping
PUBLIC: Configure the mapping to use an instance of the specified container class to hold the target objects. The key used to index a value in theMap
is the value returned by a call to the specified zero-argument method. The method must be implemented by the class (or a superclass) of any value to be inserted into theMap
.The container class must implement (directly or indirectly) the
java.util.Map
interface.To facilitate resolving the method, the mapping's referenceClass must set before calling this method.
- Specified by:
useMapClassName
in interfaceContainerMapping
- Overrides:
useMapClassName
in classAbstractCompositeCollectionMapping
-