Class TreeBuildingGenerator

java.lang.Object
tools.jackson.core.JsonGenerator
tools.jackson.databind.node.TreeBuildingGenerator
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, tools.jackson.core.Versioned

public class TreeBuildingGenerator extends tools.jackson.core.JsonGenerator
Helper class used for creating JsonNode values directly as part of serialization.
Since:
3.0
  • Field Details

    • DEFAULT_STREAM_WRITE_FEATURES

      protected static final int DEFAULT_STREAM_WRITE_FEATURES
    • BOGUS_WRITE_CAPABILITIES

      protected static final tools.jackson.core.util.JacksonFeatureSet<tools.jackson.core.StreamWriteCapability> BOGUS_WRITE_CAPABILITIES
    • _objectWriteContext

      protected final tools.jackson.core.ObjectWriteContext _objectWriteContext
    • _nodeFactory

      protected final JsonNodeFactory _nodeFactory
    • _streamWriteFeatures

      protected final int _streamWriteFeatures
      Bit flag composed of bits that indicate which StreamWriteFeatures are enabled.

      NOTE: most features have no effect on this class

    • _cfgStripTrailingBigDecimalZeroes

      protected final boolean _cfgStripTrailingBigDecimalZeroes
      Whether to strip trailing zeroes from BigDecimal values when building tree nodes.
      Since:
      3.1.1
    • _rootWriteContext

      protected tools.jackson.databind.node.TreeBuildingGenerator.RootContext _rootWriteContext
    • _tokenWriteContext

      protected tools.jackson.databind.node.TreeBuildingGenerator.TreeWriteContext _tokenWriteContext
  • Method Details

    • forSerialization

      public static TreeBuildingGenerator forSerialization(SerializationContext ctxt, JsonNodeFactory nodeFactory)
    • treeBuilt

      public JsonNode treeBuilt()
    • streamWriteContext

      public tools.jackson.core.TokenStreamContext streamWriteContext()
      Specified by:
      streamWriteContext in class tools.jackson.core.JsonGenerator
    • currentValue

      public Object currentValue()
      Specified by:
      currentValue in class tools.jackson.core.JsonGenerator
    • assignCurrentValue

      public void assignCurrentValue(Object v)
      Specified by:
      assignCurrentValue in class tools.jackson.core.JsonGenerator
    • objectWriteContext

      public tools.jackson.core.ObjectWriteContext objectWriteContext()
      Specified by:
      objectWriteContext in class tools.jackson.core.JsonGenerator
    • version

      public tools.jackson.core.Version version()
      Specified by:
      version in interface tools.jackson.core.Versioned
      Specified by:
      version in class tools.jackson.core.JsonGenerator
    • configure

      public tools.jackson.core.JsonGenerator configure(tools.jackson.core.StreamWriteFeature f, boolean state)
      Specified by:
      configure in class tools.jackson.core.JsonGenerator
    • isEnabled

      public boolean isEnabled(tools.jackson.core.StreamWriteFeature f)
      Specified by:
      isEnabled in class tools.jackson.core.JsonGenerator
    • streamWriteFeatures

      public int streamWriteFeatures()
      Specified by:
      streamWriteFeatures in class tools.jackson.core.JsonGenerator
    • streamWriteCapabilities

      public tools.jackson.core.util.JacksonFeatureSet<tools.jackson.core.StreamWriteCapability> streamWriteCapabilities()
      Specified by:
      streamWriteCapabilities in class tools.jackson.core.JsonGenerator
    • has

      public boolean has(tools.jackson.core.StreamWriteCapability capability)
      Specified by:
      has in class tools.jackson.core.JsonGenerator
    • getCharacterEscapes

      public tools.jackson.core.io.CharacterEscapes getCharacterEscapes()
      Overrides:
      getCharacterEscapes in class tools.jackson.core.JsonGenerator
    • getHighestNonEscapedChar

      public int getHighestNonEscapedChar()
      Overrides:
      getHighestNonEscapedChar in class tools.jackson.core.JsonGenerator
    • getPrettyPrinter

      public tools.jackson.core.PrettyPrinter getPrettyPrinter()
      Overrides:
      getPrettyPrinter in class tools.jackson.core.JsonGenerator
    • getSchema

      public tools.jackson.core.FormatSchema getSchema()
      Overrides:
      getSchema in class tools.jackson.core.JsonGenerator
    • flush

      public void flush()
      Specified by:
      flush in interface Flushable
      Specified by:
      flush in class tools.jackson.core.JsonGenerator
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in class tools.jackson.core.JsonGenerator
    • isClosed

      public boolean isClosed()
      Specified by:
      isClosed in class tools.jackson.core.JsonGenerator
    • streamWriteOutputTarget

      public Object streamWriteOutputTarget()
      Specified by:
      streamWriteOutputTarget in class tools.jackson.core.JsonGenerator
    • streamWriteOutputBuffered

      public int streamWriteOutputBuffered()
      Specified by:
      streamWriteOutputBuffered in class tools.jackson.core.JsonGenerator
    • writeStartArray

      public tools.jackson.core.JsonGenerator writeStartArray()
      Specified by:
      writeStartArray in class tools.jackson.core.JsonGenerator
    • writeStartArray

      public tools.jackson.core.JsonGenerator writeStartArray(Object forValue)
      Specified by:
      writeStartArray in class tools.jackson.core.JsonGenerator
    • writeStartArray

      public tools.jackson.core.JsonGenerator writeStartArray(Object forValue, int len)
      Specified by:
      writeStartArray in class tools.jackson.core.JsonGenerator
    • writeEndArray

      public tools.jackson.core.JsonGenerator writeEndArray()
      Specified by:
      writeEndArray in class tools.jackson.core.JsonGenerator
    • writeStartObject

      public tools.jackson.core.JsonGenerator writeStartObject()
      Specified by:
      writeStartObject in class tools.jackson.core.JsonGenerator
    • writeStartObject

      public tools.jackson.core.JsonGenerator writeStartObject(Object forValue)
      Specified by:
      writeStartObject in class tools.jackson.core.JsonGenerator
    • writeStartObject

      public tools.jackson.core.JsonGenerator writeStartObject(Object forValue, int size)
      Specified by:
      writeStartObject in class tools.jackson.core.JsonGenerator
    • writeEndObject

      public tools.jackson.core.JsonGenerator writeEndObject()
      Specified by:
      writeEndObject in class tools.jackson.core.JsonGenerator
    • writeName

      public tools.jackson.core.JsonGenerator writeName(String name)
      Specified by:
      writeName in class tools.jackson.core.JsonGenerator
    • writeName

      public tools.jackson.core.JsonGenerator writeName(tools.jackson.core.SerializableString name)
      Specified by:
      writeName in class tools.jackson.core.JsonGenerator
    • writePropertyId

      public tools.jackson.core.JsonGenerator writePropertyId(long id)
      Specified by:
      writePropertyId in class tools.jackson.core.JsonGenerator
    • writeString

      public tools.jackson.core.JsonGenerator writeString(String text)
      Specified by:
      writeString in class tools.jackson.core.JsonGenerator
    • writeString

      public tools.jackson.core.JsonGenerator writeString(char[] text, int offset, int len)
      Specified by:
      writeString in class tools.jackson.core.JsonGenerator
    • writeString

      public tools.jackson.core.JsonGenerator writeString(tools.jackson.core.SerializableString text)
      Specified by:
      writeString in class tools.jackson.core.JsonGenerator
    • writeString

      public tools.jackson.core.JsonGenerator writeString(Reader reader, int len)
      Specified by:
      writeString in class tools.jackson.core.JsonGenerator
    • writeRawUTF8String

      public tools.jackson.core.JsonGenerator writeRawUTF8String(byte[] text, int offset, int length)
      Specified by:
      writeRawUTF8String in class tools.jackson.core.JsonGenerator
    • writeUTF8String

      public tools.jackson.core.JsonGenerator writeUTF8String(byte[] text, int offset, int length)
      Specified by:
      writeUTF8String in class tools.jackson.core.JsonGenerator
    • writeRaw

      public tools.jackson.core.JsonGenerator writeRaw(String text)
      Specified by:
      writeRaw in class tools.jackson.core.JsonGenerator
    • writeRaw

      public tools.jackson.core.JsonGenerator writeRaw(String text, int offset, int len)
      Specified by:
      writeRaw in class tools.jackson.core.JsonGenerator
    • writeRaw

      public tools.jackson.core.JsonGenerator writeRaw(tools.jackson.core.SerializableString text)
      Overrides:
      writeRaw in class tools.jackson.core.JsonGenerator
    • writeRaw

      public tools.jackson.core.JsonGenerator writeRaw(char[] text, int offset, int len)
      Specified by:
      writeRaw in class tools.jackson.core.JsonGenerator
    • writeRaw

      public tools.jackson.core.JsonGenerator writeRaw(char c)
      Specified by:
      writeRaw in class tools.jackson.core.JsonGenerator
    • writeRawValue

      public tools.jackson.core.JsonGenerator writeRawValue(String text)
      Specified by:
      writeRawValue in class tools.jackson.core.JsonGenerator
    • writeRawValue

      public tools.jackson.core.JsonGenerator writeRawValue(String text, int offset, int len)
      Specified by:
      writeRawValue in class tools.jackson.core.JsonGenerator
    • writeRawValue

      public tools.jackson.core.JsonGenerator writeRawValue(char[] text, int offset, int len)
      Specified by:
      writeRawValue in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(short v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(int v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(long v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(double v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(float v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(BigDecimal v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • _normalize

      protected BigDecimal _normalize(BigDecimal v)
      Helper method to strip trailing zeros from a BigDecimal, used to implement JsonNodeFeature.STRIP_TRAILING_BIGDECIMAL_ZEROES.
      Since:
      3.1.1
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(BigInteger v)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeNumber

      public tools.jackson.core.JsonGenerator writeNumber(String encodedValue)
      Specified by:
      writeNumber in class tools.jackson.core.JsonGenerator
    • writeBoolean

      public tools.jackson.core.JsonGenerator writeBoolean(boolean state)
      Specified by:
      writeBoolean in class tools.jackson.core.JsonGenerator
    • writeNull

      public tools.jackson.core.JsonGenerator writeNull()
      Specified by:
      writeNull in class tools.jackson.core.JsonGenerator
    • writePOJO

      public tools.jackson.core.JsonGenerator writePOJO(Object value)
      Specified by:
      writePOJO in class tools.jackson.core.JsonGenerator
    • writeTree

      public tools.jackson.core.JsonGenerator writeTree(tools.jackson.core.TreeNode node)
      Specified by:
      writeTree in class tools.jackson.core.JsonGenerator
    • writeBinary

      public tools.jackson.core.JsonGenerator writeBinary(tools.jackson.core.Base64Variant b64variant, byte[] data, int offset, int len)
      Specified by:
      writeBinary in class tools.jackson.core.JsonGenerator
    • writeBinary

      public int writeBinary(tools.jackson.core.Base64Variant b64variant, InputStream data, int dataLength)
      Although we could support this method, it does not necessarily make sense: we cannot make good use of streaming because buffer must hold all the data. Because of this, currently this will simply throw UnsupportedOperationException
      Specified by:
      writeBinary in class tools.jackson.core.JsonGenerator
    • canWriteTypeId

      public boolean canWriteTypeId()
      Overrides:
      canWriteTypeId in class tools.jackson.core.JsonGenerator
    • canWriteObjectId

      public boolean canWriteObjectId()
      Overrides:
      canWriteObjectId in class tools.jackson.core.JsonGenerator
    • writeTypeId

      public tools.jackson.core.JsonGenerator writeTypeId(Object id)
      Overrides:
      writeTypeId in class tools.jackson.core.JsonGenerator
    • writeObjectId

      public tools.jackson.core.JsonGenerator writeObjectId(Object id)
      Overrides:
      writeObjectId in class tools.jackson.core.JsonGenerator
    • writeEmbeddedObject

      public tools.jackson.core.JsonGenerator writeEmbeddedObject(Object object)
      Overrides:
      writeEmbeddedObject in class tools.jackson.core.JsonGenerator