public class XMLVariableXPathCollectionMapping extends XMLCompositeCollectionMapping implements org.eclipse.persistence.internal.oxm.mappings.VariableXPathCollectionMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>, XMLMapping, org.eclipse.persistence.internal.oxm.mappings.XMLContainerMapping
DatabaseMapping.WriteType
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
variableAttributeName |
protected java.lang.String |
variableGetMethodName |
protected java.lang.String |
variableSetMethodName |
converter, field
hasNestedIdentityReference, referenceClass, referenceClassName, referenceDescriptor
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
Constructor and Description |
---|
XMLVariableXPathCollectionMapping() |
Modifier and Type | Method and Description |
---|---|
protected org.eclipse.persistence.internal.sessions.AbstractRecord |
buildCompositeRow(XMLField variableField,
java.lang.Object attributeValue,
org.eclipse.persistence.internal.sessions.AbstractSession session,
org.eclipse.persistence.internal.sessions.AbstractRecord parentRow,
DatabaseMapping.WriteType writeType) |
protected java.util.Vector |
collectFields()
Return the fields handled by the mapping.
|
java.util.Vector |
getFields()
INTERNAL:
Returns a vector of all the fields this mapping represents.
|
AttributeAccessor |
getVariableAttributeAccessor() |
java.lang.String |
getVariableAttributeName() |
java.lang.String |
getVariableGetMethodName() |
java.lang.String |
getVariableSetMethodName() |
org.eclipse.persistence.internal.oxm.XPathFragment |
getXPathFragmentForValue(java.lang.Object obj,
org.eclipse.persistence.internal.oxm.NamespaceResolver nr,
boolean isNamespaceAware,
char sep) |
void |
initialize(org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
The mapping is initialized with the given session.
|
protected void |
initializeMapContainerPolicy(org.eclipse.persistence.internal.sessions.AbstractSession session,
org.eclipse.persistence.internal.queries.MapContainerPolicy cp) |
protected void |
initializeReferenceDescriptorAndField(org.eclipse.persistence.internal.sessions.AbstractSession session) |
boolean |
isAbstractCompositeCollectionMapping()
INTERNAL:
|
boolean |
isAttribute() |
void |
setAttribute(boolean isAttribute) |
void |
setVariableAttributeAccessor(AttributeAccessor variableAttributeAccessor) |
void |
setVariableAttributeName(java.lang.String variableAttributeName) |
void |
setVariableGetMethodName(java.lang.String variableGetMethodName) |
void |
setVariableSetMethodName(java.lang.String variableSetMethodName) |
void |
useMapClass(java.lang.String concreteContainerClassName) |
void |
useMapClassName(java.lang.String concreteContainerClassName,
java.lang.String methodName)
PUBLIC:
Configure the mapping to use an instance of the specified container class
to hold the target objects.
|
void |
writeFromObjectIntoRow(java.lang.Object object,
org.eclipse.persistence.internal.sessions.AbstractRecord row,
org.eclipse.persistence.internal.sessions.AbstractSession session,
DatabaseMapping.WriteType writeType)
INTERNAL:
|
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
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
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
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
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
setConverter, setIsWriteOnly, setReferenceClassName
convertClassNamesToClasses, getAttributeAccessor, getAttributeClassification, getAttributeName, getAttributeValueFromObject, getContainerPolicy, getDescriptor, getField, getReferenceDescriptor, isAbstractCompositeDirectCollectionMapping, isAbstractCompositeObjectMapping, isAbstractDirectMapping, isCollectionMapping, isReadOnly, isReferenceMapping, isTransformationMapping, setAttributeAccessor, setAttributeName, setAttributeValueInObject, setGetMethodName, setIsReadOnly, setProperties, setSetMethodName, writeSingleValue
convertDataValueToObjectValue, convertObjectValueToDataValue
getReuseContainer, getWrapperNullPolicy, isDefaultEmptyContainer, setDefaultEmptyContainer, setReuseContainer, setWrapperNullPolicy
convertClassNamesToClasses, isWriteOnly, setIsWriteOnly, writeSingleValue
useCollectionClass, useCollectionClassName
getReferenceClass, getReferenceClassName, hasConverter, setConverter, setField, setReferenceClass, setReferenceClassName
getAttributeName, setRealAttributeValueInObject
protected java.lang.String variableAttributeName
protected java.lang.String variableGetMethodName
protected java.lang.String variableSetMethodName
public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
XMLCompositeCollectionMapping
initialize
in class XMLCompositeCollectionMapping
DescriptorException
public void useMapClass(java.lang.String concreteContainerClassName)
protected void initializeMapContainerPolicy(org.eclipse.persistence.internal.sessions.AbstractSession session, org.eclipse.persistence.internal.queries.MapContainerPolicy cp)
initializeMapContainerPolicy
in class XMLCompositeCollectionMapping
protected java.util.Vector collectFields()
AbstractCompositeCollectionMapping
collectFields
in class AbstractCompositeCollectionMapping
public java.util.Vector getFields()
DatabaseMapping
getFields
in class DatabaseMapping
protected void initializeReferenceDescriptorAndField(org.eclipse.persistence.internal.sessions.AbstractSession session)
initializeReferenceDescriptorAndField
in class XMLCompositeCollectionMapping
public boolean isAbstractCompositeCollectionMapping()
AbstractCompositeCollectionMapping
isAbstractCompositeCollectionMapping
in interface org.eclipse.persistence.internal.oxm.mappings.Mapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLRecord>
isAbstractCompositeCollectionMapping
in class AbstractCompositeCollectionMapping
public java.lang.String getVariableAttributeName()
public void setVariableAttributeName(java.lang.String variableAttributeName)
setVariableAttributeName
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public java.lang.String getVariableGetMethodName()
public void setVariableGetMethodName(java.lang.String variableGetMethodName)
setVariableGetMethodName
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public java.lang.String getVariableSetMethodName()
public void setVariableSetMethodName(java.lang.String variableSetMethodName)
setVariableSetMethodName
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public AttributeAccessor getVariableAttributeAccessor()
getVariableAttributeAccessor
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public void setVariableAttributeAccessor(AttributeAccessor variableAttributeAccessor)
setVariableAttributeAccessor
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public void writeFromObjectIntoRow(java.lang.Object object, org.eclipse.persistence.internal.sessions.AbstractRecord row, org.eclipse.persistence.internal.sessions.AbstractSession session, DatabaseMapping.WriteType writeType) throws DescriptorException
XMLCompositeCollectionMapping
writeFromObjectIntoRow
in class XMLCompositeCollectionMapping
DescriptorException
protected org.eclipse.persistence.internal.sessions.AbstractRecord buildCompositeRow(XMLField variableField, java.lang.Object attributeValue, org.eclipse.persistence.internal.sessions.AbstractSession session, org.eclipse.persistence.internal.sessions.AbstractRecord parentRow, DatabaseMapping.WriteType writeType)
public org.eclipse.persistence.internal.oxm.XPathFragment getXPathFragmentForValue(java.lang.Object obj, org.eclipse.persistence.internal.oxm.NamespaceResolver nr, boolean isNamespaceAware, char sep)
getXPathFragmentForValue
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public boolean isAttribute()
isAttribute
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public void setAttribute(boolean isAttribute)
setAttribute
in interface org.eclipse.persistence.internal.oxm.mappings.VariableXPathObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,XMLUnmarshaller,XMLRecord>
public void useMapClassName(java.lang.String concreteContainerClassName, java.lang.String methodName)
ContainerMapping
Map
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 the Map
.
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.
useMapClassName
in interface ContainerMapping
useMapClassName
in class AbstractCompositeCollectionMapping