Class JSONEmitter

java.lang.Object
net.sf.saxon.serialize.JSONEmitter

public class JSONEmitter extends Object
This class implements the back-end text generation of the JSON serialization method. It takes as input a sequence of event-based calls such as startArray, endArray, startMap, endMap, and generates the lexical JSON output.
  • Constructor Details

  • Method Details

    • setOutputProperties

      public void setOutputProperties(Properties details)
      Set output properties
      Parameters:
      details - the output serialization properties
    • setMustClose

      public void setMustClose(boolean mustClose)
      Say whether the output must be closed on completion
      Parameters:
      mustClose - true if the output must be closed
    • getOutputProperties

      public Properties getOutputProperties()
      Get the output properties
      Returns:
      the properties that were set using setOutputProperties
    • setNormalizationForm

      public void setNormalizationForm(Normalizer.Form form)
      Set the Unicode normalizer to be used for normalizing strings.
      Parameters:
      form - the normalization form to be used (default is no normalization)
    • setCharacterMap

      public void setCharacterMap(CharacterMap map)
      Set the CharacterMap to be used, if any
      Parameters:
      map - the character map
    • writeKey

      public void writeKey(String key) throws XPathException
      Output the key for an entry in a map. The corresponding value must be supplied in the following call.
      Parameters:
      key - the value of the key, without any escaping of special characters
      Throws:
      XPathException - if any error occurs
    • writeAtomicValue

      public void writeAtomicValue(AtomicValue item) throws XPathException
      Append a singleton value (number, string, or boolean) to the output
      Parameters:
      item - the atomic value to be appended, or null to append "null"
      Throws:
      XPathException - if the operation fails
    • writeStringValue

      public void writeStringValue(String str) throws XPathException
      Append a singleton string value to the output
      Parameters:
      str - the string value to be appended
      Throws:
      XPathException - if the operation fails
    • startArray

      public void startArray(boolean oneLiner) throws XPathException
      Output the start of an array. This call must be followed by the members of the array, followed by a call on endArray().
      Parameters:
      oneLiner - True if the caller thinks the value should be output without extra newlines after the open bracket or before the close bracket, even when indenting is on.
      Throws:
      XPathException - if any failure occurs
    • endArray

      public void endArray() throws XPathException
      Output the end of an array
      Throws:
      XPathException - if any failure occurs
    • startMap

      public void startMap(boolean oneLiner) throws XPathException
      Output the start of an map. This call must be followed by the entries in the map (each starting with a call on writeKey(String), followed by a call on endMap().
      Parameters:
      oneLiner - True if the caller thinks the value should be output without extra newlines after the open bracket or before the close bracket, even when indenting is on.
      Throws:
      XPathException - if any failure occurs
    • endMap

      public void endMap() throws XPathException
      Throws:
      XPathException
    • close

      public void close() throws XPathException
      End of the document.
      Throws:
      XPathException - if any error occurs