Package groovy.json

Class DefaultJsonGenerator

java.lang.Object
groovy.json.DefaultJsonGenerator
All Implemented Interfaces:
JsonGenerator

public class DefaultJsonGenerator extends Object implements JsonGenerator
A JsonGenerator that can be configured with various JsonGenerator.Options. If the default options are sufficient consider using the static JsonOutput.toJson methods.
Since:
2.5.0
See Also:
  • Field Details

    • excludeNulls

      protected final boolean excludeNulls
    • disableUnicodeEscaping

      protected final boolean disableUnicodeEscaping
    • dateFormat

      protected final String dateFormat
    • dateLocale

      protected final Locale dateLocale
    • timezone

      protected final TimeZone timezone
    • converters

      protected final Set<JsonGenerator.Converter> converters
    • excludedFieldNames

      protected final Set<String> excludedFieldNames
    • excludedFieldTypes

      protected final Set<Class<?>> excludedFieldTypes
  • Constructor Details

  • Method Details

    • toJson

      public String toJson(Object object)
      Converts an object to its JSON representation.
      Specified by:
      toJson in interface JsonGenerator
      Parameters:
      object - to convert to JSON
      Returns:
      JSON
    • isExcludingFieldsNamed

      public boolean isExcludingFieldsNamed(String name)
      Indicates whether this JsonGenerator is configured to exclude fields by the given name.
      Specified by:
      isExcludingFieldsNamed in interface JsonGenerator
      Parameters:
      name - of the field
      Returns:
      true if that field is being excluded, else false
    • isExcludingValues

      public boolean isExcludingValues(Object value)
      Indicates whether this JsonGenerator is configured to exclude values of the given object (may be null).
      Specified by:
      isExcludingValues in interface JsonGenerator
      Parameters:
      value - an instance of an object
      Returns:
      true if values like this are being excluded, else false
    • writeNumber

      protected void writeNumber(Class<?> numberClass, Number value, CharBuf buffer)
      Serializes Number value and writes it into specified buffer.
    • writeObject

      protected void writeObject(Object object, CharBuf buffer)
    • writeObject

      protected void writeObject(String key, Object object, CharBuf buffer)
      Serializes object and writes it into specified buffer.
    • getObjectProperties

      protected Map<?,?> getObjectProperties(Object object)
    • writeCharSequence

      protected void writeCharSequence(CharSequence seq, CharBuf buffer)
      Serializes any char sequence and writes it into specified buffer.
    • writeRaw

      protected void writeRaw(CharSequence seq, CharBuf buffer)
      Serializes any char sequence and writes it into specified buffer without performing any manipulation of the given text.
    • writeDate

      protected void writeDate(Date date, CharBuf buffer)
      Serializes date and writes it into specified buffer.
    • writeArray

      protected void writeArray(Class<?> arrayClass, Object array, CharBuf buffer)
      Serializes array and writes it into specified buffer.
    • writeMap

      protected void writeMap(Map<?,?> map, CharBuf buffer)
      Serializes map and writes it into specified buffer.
    • writeMapEntry

      protected void writeMapEntry(String key, Object value, CharBuf buffer)
      Serializes a map entry and writes it into specified buffer.
    • writeIterator

      protected void writeIterator(Iterator<?> iterator, CharBuf buffer)
      Serializes iterator and writes it into specified buffer.
    • findConverter

      protected JsonGenerator.Converter findConverter(Class<?> type)
      Finds a converter that can handle the given type. The first converter that reports it can handle the type is returned, based on the order in which the converters were specified. A null value will be returned if no suitable converter can be found for the given type.
      Parameters:
      type - that this converter can handle
      Returns:
      first converter that can handle the given type; else null if no compatible converters are found for the given type.
    • shouldExcludeType

      protected boolean shouldExcludeType(Class<?> type)
      Indicates whether the given type should be excluded from the generated output.
      Parameters:
      type - the type to check
      Returns:
      true if the given type should not be output, else false