Class JsonRecord<T extends JsonRecord.Level>

  • 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  JsonRecord.JsonRecordContentHandler
      This class will typically be used in conjunction with an XMLFragmentReader.
      protected static class  JsonRecord.Level
      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 extends java.lang.Object>
      • 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 java.lang.String attributePrefix  
      protected org.eclipse.persistence.internal.oxm.CharacterEscapeHandler characterEscapeHandler  
      protected boolean isLastEventStart  
      protected boolean isRootArray  
      protected static java.lang.String NULL  
      protected T position  
      • 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
      JsonRecord()  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract void addValueToArray​(T currentLevel, java.lang.Object value, javax.xml.namespace.QName schemaType)  
      protected abstract void addValueToObject​(T currentLevel, java.lang.String keyName, java.lang.Object value, javax.xml.namespace.QName schemaType)  
      void attribute​(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, java.lang.String value)
      Receive notification of an attribute.
      void attribute​(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, java.lang.Object value, javax.xml.namespace.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, java.lang.String value)
      Receive notification of an attribute.
      void cdata​(java.lang.String value)
      Receive notification of character data to be wrapped in a CDATA node.
      void characters​(java.lang.String value)
      Receive notification of character data.
      void characters​(javax.xml.namespace.QName schemaType, java.lang.Object value, java.lang.String mimeType, boolean isCDATA)
      Convert the value if necessary and write out the converted value.
      void characters​(javax.xml.namespace.QName schemaType, java.lang.Object value, java.lang.String mimeType, boolean isCDATA, boolean isAttribute)  
      void closeStartElement()
      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 defaultNamespaceDeclaration​(java.lang.String defaultNamespace)
      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 endDocument()
      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 finishLevel()  
      void forceValueWrapper()  
      protected java.lang.String getKeyName​(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment)  
      char getNamespaceSeparator()
      INTERNAL: The character used to separate the prefix and uri portions when namespaces are present
      protected java.lang.String getStringForQName​(javax.xml.namespace.QName qName)  
      org.eclipse.persistence.internal.oxm.XPathFragment getTextWrapperFragment()
      INTERNAL: The optional fragment used to wrap the text() mappings
      boolean isWrapperAsCollectionName()  
      void marshalWithoutRootElement​(org.eclipse.persistence.internal.oxm.ObjectBuilder treeObjectBuilder, java.lang.Object object, org.eclipse.persistence.internal.oxm.mappings.Descriptor descriptor, org.eclipse.persistence.internal.oxm.Root root, boolean isXMLRoot)
      INTERNAL:
      void namespaceDeclaration​(java.lang.String prefix, java.lang.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​(org.w3c.dom.Node node, org.eclipse.persistence.internal.oxm.NamespaceResolver resolver, java.lang.String uri, java.lang.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 startCollection()
      This method is used to inform the MarshalRecord that the element events it is about to receive are part of a collection.
      void startDocument​(java.lang.String encoding, java.lang.String version)
      Receive notification that a document is being started.
      protected void startEmptyCollection()  
      protected abstract void startRootLevelCollection()  
      protected void startRootObject()  
      protected abstract void writeEmptyCollection​(T level, java.lang.String keyName)  
      void writeValue​(java.lang.Object value, javax.xml.namespace.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 Detail

      • characterEscapeHandler

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

        protected java.lang.String attributePrefix
      • isRootArray

        protected boolean isRootArray
      • isLastEventStart

        protected boolean isLastEventStart
    • Constructor Detail

      • JsonRecord

        public JsonRecord()
    • Method Detail

      • 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​(java.lang.String encoding,
                                  java.lang.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,
                                                     java.lang.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:
        MarshalRecord.endCollection()
      • setComplex

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

        protected abstract void startRootLevelCollection()
      • getKeyName

        protected java.lang.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,
                              java.lang.Object value,
                              javax.xml.namespace.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,
                                              java.lang.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>
        Since:
        2.4
      • 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>
        Since:
        2.4
      • 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,
                              java.lang.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​(java.lang.String namespaceURI,
                              java.lang.String localName,
                              java.lang.String qName,
                              java.lang.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​(java.lang.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​(javax.xml.namespace.QName schemaType,
                               java.lang.Object value,
                               java.lang.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​(javax.xml.namespace.QName schemaType,
                               java.lang.Object value,
                               java.lang.String mimeType,
                               boolean isCDATA,
                               boolean isAttribute)
      • writeValue

        public void writeValue​(java.lang.Object value,
                               javax.xml.namespace.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,
                                                 java.lang.String keyName,
                                                 java.lang.Object value,
                                                 javax.xml.namespace.QName schemaType)
      • addValueToArray

        protected abstract void addValueToArray​(T currentLevel,
                                                java.lang.Object value,
                                                javax.xml.namespace.QName schemaType)
      • cdata

        public void cdata​(java.lang.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​(org.w3c.dom.Node node,
                         org.eclipse.persistence.internal.oxm.NamespaceResolver resolver,
                         java.lang.String uri,
                         java.lang.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 java.lang.String getStringForQName​(javax.xml.namespace.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​(java.lang.String prefix,
                                         java.lang.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​(java.lang.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>
        Since:
        EclipseLink 2.4
      • 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>
        Since:
        EclipseLink 2.4