Class JsonRecord<T extends JsonRecord.Level>

java.lang.Object
org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord
org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,MARSHALLER,org.eclipse.persistence.internal.oxm.NamespaceResolver>
org.eclipse.persistence.oxm.record.MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
org.eclipse.persistence.oxm.record.JsonRecord<T>
All Implemented Interfaces:
org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>, org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>, org.eclipse.persistence.internal.oxm.record.XMLRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession>
Direct Known Subclasses:
JsonBuilderRecord, JsonGeneratorRecord

public abstract class JsonRecord<T extends JsonRecord.Level> extends MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected class 
    This class will typically be used in conjunction with an XMLFragmentReader.
    protected static class 
    Instances of this class are used to maintain state about the current level of the JSON message being marshalled.

    Nested classes/interfaces inherited from interface org.eclipse.persistence.internal.oxm.record.MarshalRecord

    org.eclipse.persistence.internal.oxm.record.MarshalRecord.CycleDetectionStack<E>

    Nested classes/interfaces inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord

    org.eclipse.persistence.internal.oxm.record.XMLRecord.Nil
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected String
     
    protected org.eclipse.persistence.internal.oxm.CharacterEscapeHandler
     
    protected boolean
     
    protected boolean
     
    protected static final String
     
    protected T
     

    Fields inherited from class org.eclipse.persistence.oxm.record.MarshalRecord

    COLON_W_SCHEMA_NIL_ATTRIBUTE, textWrapperFragment, TRUE

    Fields inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl

    equalNamespaceResolvers, hasCustomNamespaceMapper, marshaller, namespaceAware, namespaceResolver, session

    Fields inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord

    DEFAULT_ATTRIBUTE_GROUP, NIL
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected abstract void
    addValueToArray(T currentLevel, Object value, QName schemaType)
     
    protected abstract void
    addValueToObject(T currentLevel, String keyName, Object value, QName schemaType)
     
    void
    attribute(String namespaceURI, String localName, String qName, String value)
    Receive notification of an attribute.
    void
    attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, Object value, QName schemaType)
    Convert the value if necessary and write out the attribute and converted value.
    void
    attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, String value)
    Receive notification of an attribute.
    void
    cdata(String value)
    Receive notification of character data to be wrapped in a CDATA node.
    void
    Receive notification of character data.
    void
    characters(QName schemaType, Object value, String mimeType, boolean isCDATA)
    Convert the value if necessary and write out the converted value.
    void
    characters(QName schemaType, Object value, String mimeType, boolean isCDATA, boolean isAttribute)
     
    void
    Receive notification that all of the attribute events have occurred for the most recent element that has been started.
    protected T
    createNewLevel(boolean collection, T parentLevel, boolean nestedArray)
     
    void
    Add the defaultNamespace declaration
    void
    element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
    Receive notification of an element.
    void
    emptyAttribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    Used when an nil attribute should be written
    boolean
    emptyCollection(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, boolean openGrouping)
    Handle marshal of an empty collection.
    void
    emptyComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    Used when an empty complex item should be written
    void
    emptySimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    Used when an empty simple value should be written
    void
    Recieve notification that a document is being ended.
    void
    endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    Receive notification that an element is being ended.
    protected void
     
    void
     
    protected String
    getKeyName(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment)
     
    char
    INTERNAL: The character used to separate the prefix and uri portions when namespaces are present
    protected String
     
    org.eclipse.persistence.internal.oxm.XPathFragment
    INTERNAL: The optional fragment used to wrap the text() mappings
    boolean
     
    void
    marshalWithoutRootElement(org.eclipse.persistence.internal.oxm.ObjectBuilder treeObjectBuilder, Object object, org.eclipse.persistence.internal.oxm.mappings.Descriptor descriptor, org.eclipse.persistence.internal.oxm.Root root, boolean isXMLRoot)
    INTERNAL:
    void
    namespaceDeclaration(String prefix, String namespaceURI)
    Add the specified namespace declaration
    void
    namespaceDeclarations(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    INTERNAL:
    void
    nilComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    INTERNAL:
    void
    nilSimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    INTERNAL:
    void
    node(Node node, org.eclipse.persistence.internal.oxm.NamespaceResolver resolver, String uri, String name)
    Receive notification of a node.
    void
    openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
    Receive notification that an element is being started.
    protected void
    setComplex(T level, boolean complex)
     
    void
    setMarshaller(org.eclipse.persistence.internal.oxm.XMLMarshaller marshaller)
    INTERNAL:
    void
    This method is used to inform the MarshalRecord that the element events it is about to receive are part of a collection.
    void
    startDocument(String encoding, String version)
    Receive notification that a document is being started.
    protected void
     
    protected abstract void
     
    protected void
     
    protected abstract void
    writeEmptyCollection(T level, String keyName)
     
    void
    writeValue(Object value, QName schemaType, boolean isAttribute)
     

    Methods inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl

    addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, attributeWithoutQName, getConversionManager, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, getSession, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord

    addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, hasEqualNamespaceResolvers, isNamespaceAware, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute

    Methods inherited from interface org.eclipse.persistence.internal.oxm.record.MarshalRecord

    attributeWithoutQName, hasCustomNamespaceMapper, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, setLeafElementType

    Methods inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord

    getConversionManager, getSession
  • Field Details

    • position

      protected T extends JsonRecord.Level position
    • characterEscapeHandler

      protected org.eclipse.persistence.internal.oxm.CharacterEscapeHandler characterEscapeHandler
    • attributePrefix

      protected String attributePrefix
    • isRootArray

      protected boolean isRootArray
    • NULL

      protected static final String NULL
      See Also:
    • isLastEventStart

      protected boolean isLastEventStart
  • Constructor Details

    • JsonRecord

      public JsonRecord()
  • Method Details

    • setMarshaller

      public void setMarshaller(org.eclipse.persistence.internal.oxm.XMLMarshaller marshaller)
      INTERNAL:
      Specified by:
      setMarshaller in interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      setMarshaller in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      setMarshaller in class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
    • forceValueWrapper

      public void forceValueWrapper()
      Specified by:
      forceValueWrapper in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      forceValueWrapper in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • startDocument

      public void startDocument(String encoding, String version)
      Description copied from class: MarshalRecord
      Receive notification that a document is being started.
      Specified by:
      startDocument in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      encoding - The XML document will be encoded using this encoding.
      version - This specifies the version of XML.
    • createNewLevel

      protected T createNewLevel(boolean collection, T parentLevel, boolean nestedArray)
    • startRootObject

      protected void startRootObject()
    • openStartElement

      public void openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      Description copied from class: MarshalRecord
      Receive notification that an element is being started.
      Specified by:
      openStartElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      openStartElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      xPathFragment - The XPathFragment contains the name and prefix information about the XML element being ended.
      namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI for the namespace prefix held by the XPathFragment (if required).
    • startEmptyCollection

      protected void startEmptyCollection()
    • emptyCollection

      public boolean emptyCollection(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, boolean openGrouping)
      Handle marshal of an empty collection.
      Specified by:
      emptyCollection in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      emptyCollection in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      xPathFragment -
      namespaceResolver -
      openGrouping - if grouping elements should be marshalled for empty collections
      Returns:
    • writeEmptyCollection

      protected abstract void writeEmptyCollection(T level, String keyName)
    • endDocument

      public void endDocument()
      Description copied from class: MarshalRecord
      Recieve notification that a document is being ended.
      Specified by:
      endDocument in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • finishLevel

      protected void finishLevel()
    • startCollection

      public void startCollection()
      Description copied from class: MarshalRecord
      This method is used to inform the MarshalRecord that the element events it is about to receive are part of a collection.
      Specified by:
      startCollection in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      startCollection in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      See Also:
    • setComplex

      protected void setComplex(T level, boolean complex)
    • startRootLevelCollection

      protected abstract void startRootLevelCollection()
    • getKeyName

      protected String getKeyName(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment)
    • attribute

      public void attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, Object value, QName schemaType)
      Description copied from class: MarshalRecord
      Convert the value if necessary and write out the attribute and converted value.
      Specified by:
      attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      attribute in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • marshalWithoutRootElement

      public void marshalWithoutRootElement(org.eclipse.persistence.internal.oxm.ObjectBuilder treeObjectBuilder, Object object, org.eclipse.persistence.internal.oxm.mappings.Descriptor descriptor, org.eclipse.persistence.internal.oxm.Root root, boolean isXMLRoot)
      INTERNAL:
      Overrides:
      marshalWithoutRootElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • getNamespaceSeparator

      public char getNamespaceSeparator()
      INTERNAL: The character used to separate the prefix and uri portions when namespaces are present
      Specified by:
      getNamespaceSeparator in interface org.eclipse.persistence.internal.oxm.record.XMLRecord<T extends JsonRecord.Level>
      Overrides:
      getNamespaceSeparator in class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
    • getTextWrapperFragment

      public org.eclipse.persistence.internal.oxm.XPathFragment getTextWrapperFragment()
      INTERNAL: The optional fragment used to wrap the text() mappings
      Specified by:
      getTextWrapperFragment in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      getTextWrapperFragment in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • isWrapperAsCollectionName

      public boolean isWrapperAsCollectionName()
      Specified by:
      isWrapperAsCollectionName in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      isWrapperAsCollectionName in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • element

      public void element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
      Description copied from class: MarshalRecord
      Receive notification of an element.
      Specified by:
      element in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      frag - The XPathFragment of the element
    • attribute

      public void attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, String value)
      Description copied from class: MarshalRecord
      Receive notification of an attribute.
      Specified by:
      attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      attribute in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      xPathFragment - The XPathFragment contains the name and prefix information about the XML element being ended.
      namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI for the namespace prefix held by the XPathFragment (if required).
      value - This is the complete value for the attribute.
    • attribute

      public void attribute(String namespaceURI, String localName, String qName, String value)
      Description copied from class: MarshalRecord
      Receive notification of an attribute.
      Specified by:
      attribute in interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      attribute in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      namespaceURI - The namespace URI, if the attribute is not namespace qualified the value of this parameter wil be null.
      localName - The local name of the attribute.
      qName - The qualified name of the attribute.
      value - This is the complete value for the attribute.
    • closeStartElement

      public void closeStartElement()
      Description copied from class: MarshalRecord
      Receive notification that all of the attribute events have occurred for the most recent element that has been started.
      Specified by:
      closeStartElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      closeStartElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • characters

      public void characters(String value)
      Description copied from class: MarshalRecord
      Receive notification of character data.
      Specified by:
      characters in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      characters in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      value - This is the entire value of the text node.
    • characters

      public void characters(QName schemaType, Object value, String mimeType, boolean isCDATA)
      Description copied from class: MarshalRecord
      Convert the value if necessary and write out the converted value.
      Specified by:
      characters in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      characters in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • characters

      public void characters(QName schemaType, Object value, String mimeType, boolean isCDATA, boolean isAttribute)
    • writeValue

      public void writeValue(Object value, QName schemaType, boolean isAttribute)
    • endElement

      public void endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      Description copied from class: MarshalRecord
      Receive notification that an element is being ended.
      Specified by:
      endElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      endElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      xPathFragment - The XPathFragment contains the name and prefix information about the XML element being ended.
      namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI for the namespace prefix held by the XPathFragment (if required).
    • addValueToObject

      protected abstract void addValueToObject(T currentLevel, String keyName, Object value, QName schemaType)
    • addValueToArray

      protected abstract void addValueToArray(T currentLevel, Object value, QName schemaType)
    • cdata

      public void cdata(String value)
      Description copied from class: MarshalRecord
      Receive notification of character data to be wrapped in a CDATA node.
      Specified by:
      cdata in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      cdata in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      value - This is the value of the text to be wrapped
    • node

      public void node(Node node, org.eclipse.persistence.internal.oxm.NamespaceResolver resolver, String uri, String name)
      Description copied from class: MarshalRecord
      Receive notification of a node.
      Specified by:
      node in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      node - The Node to be added to the document
      resolver - The NamespaceResolver can be used to resolve the
      uri - replacement root name for the node
      name - replacement root namespace for the node namespace URI/prefix of the node
    • getStringForQName

      protected String getStringForQName(QName qName)
      Overrides:
      getStringForQName in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • namespaceDeclarations

      public void namespaceDeclarations(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      INTERNAL:
      Overrides:
      namespaceDeclarations in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
      Parameters:
      namespaceResolver - The NamespaceResolver contains the namespace prefix and URI pairings that need to be declared.
    • namespaceDeclaration

      public void namespaceDeclaration(String prefix, String namespaceURI)
      Description copied from class: MarshalRecord
      Add the specified namespace declaration
      Specified by:
      namespaceDeclaration in interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Specified by:
      namespaceDeclaration in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      namespaceDeclaration in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • defaultNamespaceDeclaration

      public void defaultNamespaceDeclaration(String defaultNamespace)
      Description copied from class: MarshalRecord
      Add the defaultNamespace declaration
      Overrides:
      defaultNamespaceDeclaration in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • nilComplex

      public void nilComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      INTERNAL:
      Specified by:
      nilComplex in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      nilComplex in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • nilSimple

      public void nilSimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      INTERNAL:
      Specified by:
      nilSimple in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      nilSimple in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • emptySimple

      public void emptySimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      Used when an empty simple value should be written
      Specified by:
      emptySimple in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      emptySimple in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • emptyAttribute

      public void emptyAttribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      Description copied from class: MarshalRecord
      Used when an nil attribute should be written
      Specified by:
      emptyAttribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      emptyAttribute in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
    • emptyComplex

      public void emptyComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
      Used when an empty complex item should be written
      Specified by:
      emptyComplex in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
      Overrides:
      emptyComplex in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>