Class ContentHandlerRecord

  • All Implemented Interfaces:
    AbstractMarshalRecord, MarshalRecord, XMLRecord

    public class ContentHandlerRecord
    extends MarshalRecord

    Use this type of MarshalRecord when the marshal target is a ContentHandler.

    XMLContext xmlContext = new XMLContext("session-name");
    XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
    ContentHandlerRecord contentHandlerRecord = new ContentHandlerRecord();
    marshalRecord.setContentHandler(myContentHandler);
    xmlMarshaller.marshal(myObject, contentHandlerRecord);

    If the marshal(ContentHandler) method is called on XMLMarshaller, then the ContentHanlder is automatically wrapped in a ContentHandlerRecord.

    XMLContext xmlContext = new XMLContext("session-name");
    XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
    xmlMarshaller.marshal(myObject, contentHandler);

    See Also:
    XMLMarshaller
    • Field Detail

      • isStartElementOpen

        protected boolean isStartElementOpen
    • Constructor Detail

      • ContentHandlerRecord

        public ContentHandlerRecord()
    • Method Detail

      • getContentHandler

        public ContentHandler getContentHandler()
        Return the ContentHandler that the object will be marshalled to.
        Returns:
        The marshal target.
      • setContentHandler

        public void setContentHandler​(ContentHandler contentHandler)
        Set the ContentHandler that the object will be marshalled to.
        Parameters:
        contentHandler - The marshal target.
      • setLexicalHandler

        public void setLexicalHandler​(LexicalHandler lexicalHandler)
        Set the LexicalHandler to receive CDATA related events
      • startDocument

        public void startDocument​(String encoding,
                                  String version)
        INTERNAL:
        Specified by:
        startDocument in class MarshalRecord
        Parameters:
        encoding - The XML document will be encoded using this encoding.
        version - This specifies the version of XML.
      • namespaceDeclarations

        public void namespaceDeclarations​(NamespaceResolver namespaceResolver)
        INTERNAL: Add the namespace declarations to the XML document.
        Overrides:
        namespaceDeclarations in class MarshalRecord
        Parameters:
        namespaceResolver - The NamespaceResolver contains the namespace prefix and URI pairings that need to be declared.
      • openStartElement

        public void openStartElement​(XPathFragment xPathFragment,
                                     NamespaceResolver namespaceResolver)
        INTERNAL:
        Specified by:
        openStartElement in interface MarshalRecord
        Overrides:
        openStartElement in class MarshalRecord
        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).
      • attribute

        public void attribute​(XPathFragment xPathFragment,
                              NamespaceResolver namespaceResolver,
                              String value)
        INTERNAL:
        Specified by:
        attribute in interface MarshalRecord
        Specified by:
        attribute in class MarshalRecord
        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)
        INTERNAL:
        Specified by:
        attribute in interface AbstractMarshalRecord
        Specified by:
        attribute in interface MarshalRecord
        Specified by:
        attribute in class MarshalRecord
        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.
      • endElement

        public void endElement​(XPathFragment xPathFragment,
                               NamespaceResolver namespaceResolver)
        INTERNAL:
        Specified by:
        endElement in interface MarshalRecord
        Specified by:
        endElement in class MarshalRecord
        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).
      • cdata

        public void cdata​(String value)
        INTERNAL:
        Specified by:
        cdata in interface MarshalRecord
        Specified by:
        cdata in class MarshalRecord
        Parameters:
        value - This is the value of the text to be wrapped
      • node

        public void node​(Node node,
                         NamespaceResolver namespaceResolver,
                         String uri,
                         String name)
        Receive notification of a node.
        Specified by:
        node in class MarshalRecord
        Parameters:
        node - The Node to be added to the document
        namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI/prefix of the node
        uri - replacement root name for the node
        name - replacement root namespace for the node namespace URI/prefix of the node