Interface StructuredFormatter.Generator

Enclosing class:
StructuredFormatter

protected static interface StructuredFormatter.Generator
A generator used to create the structured output.
  • Method Details

    • begin

      default StructuredFormatter.Generator begin() throws Exception
      Initial method invoked at the start of the generation.
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • add

      default StructuredFormatter.Generator add(String key, int value) throws Exception
      Writes an integer value.
      Parameters:
      key - they key
      value - the value
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • add

      default StructuredFormatter.Generator add(String key, long value) throws Exception
      Writes a long value.
      Parameters:
      key - they key
      value - the value
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • add

      Writes a map value
      Parameters:
      key - the key for the map
      value - the map
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • add

      Writes a string value.
      Parameters:
      key - the key for the value
      value - the string value
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • addMetaData

      default StructuredFormatter.Generator addMetaData(Map<String,String> metaData) throws Exception
      Adds the meta data to the structured format.

      By default this processes the map and uses add(String, String) to add entries.

      Parameters:
      metaData - the matp of the meta data, cannot be null
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • startObject

      Writes the start of an object.

      If the wrapArrays() returns false the key may be null and implementations should handle this.

      Parameters:
      key - they key for the object, or null if this object was started in an array and the wrapArrays() is false
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • endObject

      Writes an end to the object.
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • startArray

      default StructuredFormatter.Generator startArray(String key) throws Exception
      Writes the start of an array. This defaults to startObject(String) for convenience of generators that don't have a specific type for arrays.
      Parameters:
      key - they key for the array
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • endArray

      default StructuredFormatter.Generator endArray() throws Exception
      Writes an end for an array. This defaults to endObject() for convenience of generators that don't have a specific type for arrays.
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • addAttribute

      default StructuredFormatter.Generator addAttribute(String name, int value) throws Exception
      Writes an attribute.

      By default this uses the add(String, int) method to add the attribute. If a formatter requires special handling for attributes, for example an attribute on an XML element, this method can be overridden.

      Parameters:
      name - the name of the attribute
      value - the value of the attribute
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • addAttribute

      default StructuredFormatter.Generator addAttribute(String name, String value) throws Exception
      Writes an attribute.

      By default this uses the add(String, String) method to add the attribute. If a formatter requires special handling for attributes, for example an attribute on an XML element, this method can be overridden.

      Parameters:
      name - the name of the attribute
      value - the value of the attribute
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data
    • end

      Writes any trailing data that's needed.
      Returns:
      the generator
      Throws:
      Exception - if an error occurs while adding the data during the build
    • wrapArrays

      default boolean wrapArrays()
      Indicates whether or not elements in an array should be wrapped or not. The default is false.
      Returns:
      true if elements should be wrapped, otherwise false