Module eclipselink

Class XMLVariableXPathCollectionMapping

java.lang.Object
org.eclipse.persistence.core.mappings.CoreMapping<AttributeAccessor,org.eclipse.persistence.internal.sessions.AbstractSession,org.eclipse.persistence.internal.queries.ContainerPolicy,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField>
All Implemented Interfaces:
Serializable, Cloneable, org.eclipse.persistence.internal.oxm.mappings.CompositeCollectionMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,UnmarshalKeepAsElementPolicy,XMLUnmarshaller,XMLRecord>, org.eclipse.persistence.internal.oxm.mappings.CompositeObjectMapping<org.eclipse.persistence.internal.sessions.AbstractSession,AttributeAccessor,org.eclipse.persistence.internal.queries.ContainerPolicy,Converter,ClassDescriptor,org.eclipse.persistence.internal.helper.DatabaseField,XMLMarshaller,Session,UnmarshalKeepAsElementPolicy,XMLUnmarshaller,XMLRecord>, 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>, 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>, 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>, org.eclipse.persistence.internal.oxm.mappings.XMLContainerMapping, org.eclipse.persistence.internal.oxm.mappings.XMLConverterMapping<XMLMarshaller,Session,XMLUnmarshaller>, ContainerMapping, ArrayCollectionMapping, XMLMapping, XMLNillableMapping

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
See Also:
  • Field Details

    • variableAttributeName

      protected String variableAttributeName
    • variableGetMethodName

      protected String variableGetMethodName
    • variableSetMethodName

      protected String variableSetMethodName
  • Constructor Details

    • XMLVariableXPathCollectionMapping

      public XMLVariableXPathCollectionMapping()
      Default constructor.
  • Method Details

    • initialize

      public void initialize(org.eclipse.persistence.internal.sessions.AbstractSession session) throws DescriptorException
      Description copied from class: XMLCompositeCollectionMapping
      INTERNAL: The mapping is initialized with the given session. This mapping is fully initialized after this.
      Overrides:
      initialize in class XMLCompositeCollectionMapping
      Throws:
      DescriptorException
    • useMapClass

      public void useMapClass(String concreteContainerClassName)
    • initializeMapContainerPolicy

      protected void initializeMapContainerPolicy(org.eclipse.persistence.internal.sessions.AbstractSession session, org.eclipse.persistence.internal.queries.MapContainerPolicy cp)
      Overrides:
      initializeMapContainerPolicy in class XMLCompositeCollectionMapping
    • collectFields

      protected List<org.eclipse.persistence.internal.helper.DatabaseField> collectFields()
      Description copied from class: AbstractCompositeCollectionMapping
      Return the fields handled by the mapping.
      Overrides:
      collectFields in class AbstractCompositeCollectionMapping
    • getFields

      public List<org.eclipse.persistence.internal.helper.DatabaseField> getFields()
      Description copied from class: DatabaseMapping
      INTERNAL: Returns a list of all the fields this mapping represents.
      Overrides:
      getFields in class DatabaseMapping
      Returns:
      TODO
    • initializeReferenceDescriptorAndField

      protected void initializeReferenceDescriptorAndField(org.eclipse.persistence.internal.sessions.AbstractSession session)
      Overrides:
      initializeReferenceDescriptorAndField in class XMLCompositeCollectionMapping
    • isAbstractCompositeCollectionMapping

      public boolean isAbstractCompositeCollectionMapping()
      Description copied from class: AbstractCompositeCollectionMapping
      INTERNAL:
      Specified by:
      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>
      Overrides:
      isAbstractCompositeCollectionMapping in class AbstractCompositeCollectionMapping
      Returns:
      TODO
    • getVariableAttributeName

      public String getVariableAttributeName()
    • setVariableAttributeName

      public void setVariableAttributeName(String variableAttributeName)
      Specified by:
      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>
    • getVariableGetMethodName

      public String getVariableGetMethodName()
    • setVariableGetMethodName

      public void setVariableGetMethodName(String variableGetMethodName)
      Specified by:
      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>
    • getVariableSetMethodName

      public String getVariableSetMethodName()
    • setVariableSetMethodName

      public void setVariableSetMethodName(String variableSetMethodName)
      Specified by:
      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>
    • getVariableAttributeAccessor

      public AttributeAccessor getVariableAttributeAccessor()
      Specified by:
      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>
    • setVariableAttributeAccessor

      public void setVariableAttributeAccessor(AttributeAccessor variableAttributeAccessor)
      Specified by:
      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>
    • writeFromObjectIntoRow

      public void writeFromObjectIntoRow(Object object, org.eclipse.persistence.internal.sessions.AbstractRecord row, org.eclipse.persistence.internal.sessions.AbstractSession session, DatabaseMapping.WriteType writeType) throws DescriptorException
      Description copied from class: XMLCompositeCollectionMapping
      INTERNAL:
      Overrides:
      writeFromObjectIntoRow in class XMLCompositeCollectionMapping
      Throws:
      DescriptorException
    • buildCompositeRow

      protected org.eclipse.persistence.internal.sessions.AbstractRecord buildCompositeRow(XMLField variableField, Object attributeValue, org.eclipse.persistence.internal.sessions.AbstractSession session, org.eclipse.persistence.internal.sessions.AbstractRecord parentRow, DatabaseMapping.WriteType writeType)
    • getXPathFragmentForValue

      public org.eclipse.persistence.internal.oxm.XPathFragment getXPathFragmentForValue(Object obj, org.eclipse.persistence.internal.oxm.NamespaceResolver nr, boolean isNamespaceAware, char sep)
      Specified by:
      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>
    • isAttribute

      public boolean isAttribute()
      Specified by:
      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>
    • setAttribute

      public void setAttribute(boolean isAttribute)
      Specified by:
      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>
    • useMapClassName

      public void useMapClassName(String concreteContainerClassName, String methodName)
      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 the 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.

      Specified by:
      useMapClassName in interface ContainerMapping
      Overrides:
      useMapClassName in class AbstractCompositeCollectionMapping