Class JsonSaxWriter

  • All Implemented Interfaces:
    SaxWriter

    class JsonSaxWriter
    extends Object
    implements SaxWriter
    Implementation of SaxWriter which, perversely, generates a JSON (JavaScript Object Notation) document.
    Author:
    jhyde
    • Constructor Detail

      • JsonSaxWriter

        public JsonSaxWriter​(OutputStream outputStream)
        Creates a JsonSaxWriter.
        Parameters:
        outputStream - Output stream
    • Method Detail

      • startSequence

        public void startSequence​(String name,
                                  String subName)
        Description copied from interface: SaxWriter
        Informs the writer that a sequence of elements of the same name is starting.

        For XML, is equivalent to startElement(name).

        For JSON, initiates the array construct:

        "name" : [
          { ... },
          { ... }
        ]
        Specified by:
        startSequence in interface SaxWriter
        Parameters:
        name - Element name
        subName - Child element name
      • endSequence

        public void endSequence()
        Description copied from interface: SaxWriter
        Informs the writer that a sequence of elements of the same name has ended.
        Specified by:
        endSequence in interface SaxWriter
      • textElement

        public void textElement​(String name,
                                Object data)
        Description copied from interface: SaxWriter
        Generates a text-only element, <name>data</name>.

        For XML, this is equivalent to

        startElement(name);
        characters(data);
        endElement();
        but for JSON, generates "name": "data".
        Specified by:
        textElement in interface SaxWriter
        Parameters:
        name - Name of element
        data - Text content of element
      • verbatim

        public void verbatim​(String text)
        Description copied from interface: SaxWriter
        Sends a piece of text verbatim through the writer. It must be a piece of well-formed XML.
        Specified by:
        verbatim in interface SaxWriter
      • flush

        public void flush()
        Description copied from interface: SaxWriter
        Flushes any unwritten output.
        Specified by:
        flush in interface SaxWriter