Interface StAXStreamProcessor

  • All Known Implementing Classes:
    AbstractStAXStreamProcessor

    public interface StAXStreamProcessor
    This interface provides a base support for the XMLOutputter.

    People who want to create a custom XMLOutputProcessor for XMLOutputter are able to implement this interface with the following notes and restrictions:

    1. The XMLOutputter will call one, and only one of the process(XMLStreamWriter,Format,*) methods each time the XMLOutputter is requested to output some JDOM content. It is thus safe to assume that a process(XMLStreamWriter,Format,*) method can set up any infrastructure needed to process the content, and that the XMLOutputter will not re-call that method, or some other process(XMLStreamWriter,Format,*) method for the same output sequence.
    2. The process methods should be thread-safe and reentrant: The same process(XMLStreamWriter,Format,*) method may (will) be called concurrently from different threads.

    The AbstractXMLOutputProcessor class is a full implementation of this interface and is fully customisable. People who want a custom XMLOutputter are encouraged to extend the AbstractXMLOutputProcessor rather than do a full re-implementation of this interface.

    Since:
    JDOM2
    Author:
    Rolf Lear
    See Also:
    XMLOutputter, AbstractXMLOutputProcessor
    • Method Detail

      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     Document doc)
              throws javax.xml.stream.XMLStreamException
        This will print the Document to the given XMLStreamWriter.

        Warning: using your own XMLStreamWriter may cause the outputter's preferred character encoding to be ignored. If you use encodings other than UTF-8, we recommend using the method that takes an OutputStream instead.

        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        doc - Document to format.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     DocType doctype)
              throws javax.xml.stream.XMLStreamException
        Print out the DocType.
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        doctype - DocType to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     Element element)
              throws javax.xml.stream.XMLStreamException
        Print out an Element, including its Attributes, and all contained (child) elements, etc.
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        element - Element to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     java.util.List<? extends Content> list)
              throws javax.xml.stream.XMLStreamException
        This will handle printing out a list of nodes. This can be useful for printing the content of an element that contains HTML, like "<description>JDOM is <b>fun>!</description>".
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        list - List of nodes.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input list is null or contains null members
        java.lang.ClassCastException - if any of the list members are not Content
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     CDATA cdata)
              throws javax.xml.stream.XMLStreamException
        Print out a CDATA node.
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        cdata - CDATA to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     Text text)
              throws javax.xml.stream.XMLStreamException
        Print out a Text node. Perfoms the necessary entity escaping and whitespace stripping.
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        text - Text to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     Comment comment)
              throws javax.xml.stream.XMLStreamException
        Print out a Comment.
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        comment - Comment to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     ProcessingInstruction pi)
              throws javax.xml.stream.XMLStreamException
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        pi - ProcessingInstruction to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null
      • process

        void process​(javax.xml.stream.XMLStreamWriter out,
                     Format format,
                     EntityRef entity)
              throws javax.xml.stream.XMLStreamException
        Print out a EntityRef.
        Parameters:
        out - XMLStreamWriter to use.
        format - Format instance specifying output style
        entity - EntityRef to output.
        Throws:
        javax.xml.stream.XMLStreamException - if there's any problem writing.
        java.lang.NullPointerException - if the input content is null