Class YAMLGenerator

  • All Implemented Interfaces:
    com.fasterxml.jackson.core.Versioned, Closeable, Flushable, AutoCloseable

    public class YAMLGenerator
    extends com.fasterxml.jackson.core.base.GeneratorBase
    • Field Detail

      • PLAIN_NUMBER_P

        protected static final Pattern PLAIN_NUMBER_P
      • _ioContext

        protected final com.fasterxml.jackson.core.io.IOContext _ioContext
      • _formatFeatures

        protected int _formatFeatures
        Bit flag composed of bits that indicate which YAMLGenerator.Features are enabled.
      • _writer

        protected Writer _writer
      • _outputOptions

        protected org.yaml.snakeyaml.DumperOptions _outputOptions
      • _emitter

        protected org.yaml.snakeyaml.emitter.Emitter _emitter
      • _objectId

        protected String _objectId
        YAML supports native Object identifiers, so databinder may indicate need to output one.
      • _typeId

        protected String _typeId
        YAML supports native Type identifiers, so databinder may indicate need to output one.
    • Constructor Detail

      • YAMLGenerator

        public YAMLGenerator​(com.fasterxml.jackson.core.io.IOContext ctxt,
                             int jsonFeatures,
                             int yamlFeatures,
                             com.fasterxml.jackson.core.ObjectCodec codec,
                             Writer out,
                             org.yaml.snakeyaml.DumperOptions.Version version)
                      throws IOException
        Throws:
        IOException
    • Method Detail

      • buildDumperOptions

        protected org.yaml.snakeyaml.DumperOptions buildDumperOptions​(int jsonFeatures,
                                                                      int yamlFeatures,
                                                                      org.yaml.snakeyaml.DumperOptions.Version version)
      • version

        public com.fasterxml.jackson.core.Version version()
        Specified by:
        version in interface com.fasterxml.jackson.core.Versioned
        Overrides:
        version in class com.fasterxml.jackson.core.base.GeneratorBase
      • useDefaultPrettyPrinter

        public YAMLGenerator useDefaultPrettyPrinter()
        Not sure what to do here; could reset indentation to some value maybe?
        Overrides:
        useDefaultPrettyPrinter in class com.fasterxml.jackson.core.base.GeneratorBase
      • setPrettyPrinter

        public YAMLGenerator setPrettyPrinter​(com.fasterxml.jackson.core.PrettyPrinter pp)
        Not sure what to do here; will always indent, but uses YAML-specific settings etc.
        Overrides:
        setPrettyPrinter in class com.fasterxml.jackson.core.JsonGenerator
      • getOutputTarget

        public Object getOutputTarget()
        Overrides:
        getOutputTarget in class com.fasterxml.jackson.core.JsonGenerator
      • getOutputBuffered

        public int getOutputBuffered()
        SnakeYAML does not expose buffered content amount, so we can only return -1 from here
        Overrides:
        getOutputBuffered in class com.fasterxml.jackson.core.JsonGenerator
      • getFormatFeatures

        public int getFormatFeatures()
        Overrides:
        getFormatFeatures in class com.fasterxml.jackson.core.JsonGenerator
      • overrideFormatFeatures

        public com.fasterxml.jackson.core.JsonGenerator overrideFormatFeatures​(int values,
                                                                               int mask)
        Overrides:
        overrideFormatFeatures in class com.fasterxml.jackson.core.JsonGenerator
      • canUseSchema

        public boolean canUseSchema​(com.fasterxml.jackson.core.FormatSchema schema)
        Overrides:
        canUseSchema in class com.fasterxml.jackson.core.JsonGenerator
      • canWriteFormattedNumbers

        public boolean canWriteFormattedNumbers()
        Overrides:
        canWriteFormattedNumbers in class com.fasterxml.jackson.core.JsonGenerator
      • writeFieldName

        public final void writeFieldName​(String name)
                                  throws IOException
        Specified by:
        writeFieldName in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeFieldName

        public final void writeFieldName​(com.fasterxml.jackson.core.SerializableString name)
                                  throws IOException
        Overrides:
        writeFieldName in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • writeStringField

        public final void writeStringField​(String fieldName,
                                           String value)
                                    throws IOException
        Overrides:
        writeStringField in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • flush

        public final void flush()
                         throws IOException
        Specified by:
        flush in interface Flushable
        Specified by:
        flush in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • writeStartArray

        public final void writeStartArray()
                                   throws IOException
        Specified by:
        writeStartArray in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeEndArray

        public final void writeEndArray()
                                 throws IOException
        Specified by:
        writeEndArray in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeStartObject

        public final void writeStartObject()
                                    throws IOException
        Specified by:
        writeStartObject in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeEndObject

        public final void writeEndObject()
                                  throws IOException
        Specified by:
        writeEndObject in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeString

        public void writeString​(String text)
                         throws IOException,
                                com.fasterxml.jackson.core.JsonGenerationException
        Specified by:
        writeString in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
        com.fasterxml.jackson.core.JsonGenerationException
      • writeString

        public void writeString​(char[] text,
                                int offset,
                                int len)
                         throws IOException
        Specified by:
        writeString in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeString

        public final void writeString​(com.fasterxml.jackson.core.SerializableString sstr)
                               throws IOException
        Overrides:
        writeString in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • writeRawUTF8String

        public void writeRawUTF8String​(byte[] text,
                                       int offset,
                                       int len)
                                throws IOException
        Specified by:
        writeRawUTF8String in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeUTF8String

        public final void writeUTF8String​(byte[] text,
                                          int offset,
                                          int len)
                                   throws IOException
        Specified by:
        writeUTF8String in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeRaw

        public void writeRaw​(String text)
                      throws IOException
        Specified by:
        writeRaw in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeRaw

        public void writeRaw​(String text,
                             int offset,
                             int len)
                      throws IOException
        Specified by:
        writeRaw in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeRaw

        public void writeRaw​(char[] text,
                             int offset,
                             int len)
                      throws IOException
        Specified by:
        writeRaw in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeRaw

        public void writeRaw​(char c)
                      throws IOException
        Specified by:
        writeRaw in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeRawValue

        public void writeRawValue​(String text)
                           throws IOException
        Overrides:
        writeRawValue in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • writeRawValue

        public void writeRawValue​(String text,
                                  int offset,
                                  int len)
                           throws IOException
        Overrides:
        writeRawValue in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • writeRawValue

        public void writeRawValue​(char[] text,
                                  int offset,
                                  int len)
                           throws IOException
        Overrides:
        writeRawValue in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • writeBinary

        public void writeBinary​(com.fasterxml.jackson.core.Base64Variant b64variant,
                                byte[] data,
                                int offset,
                                int len)
                         throws IOException
        Specified by:
        writeBinary in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeBoolean

        public void writeBoolean​(boolean state)
                          throws IOException
        Specified by:
        writeBoolean in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNumber

        public void writeNumber​(int i)
                         throws IOException
        Specified by:
        writeNumber in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNumber

        public void writeNumber​(long l)
                         throws IOException
        Specified by:
        writeNumber in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNumber

        public void writeNumber​(BigInteger v)
                         throws IOException
        Specified by:
        writeNumber in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNumber

        public void writeNumber​(double d)
                         throws IOException
        Specified by:
        writeNumber in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNumber

        public void writeNumber​(float f)
                         throws IOException
        Specified by:
        writeNumber in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNumber

        public void writeNumber​(BigDecimal dec)
                         throws IOException
        Specified by:
        writeNumber in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeNull

        public void writeNull()
                       throws IOException
        Specified by:
        writeNull in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • canWriteObjectId

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

        public boolean canWriteTypeId()
        Overrides:
        canWriteTypeId in class com.fasterxml.jackson.core.JsonGenerator
      • writeTypeId

        public void writeTypeId​(Object id)
                         throws IOException
        Overrides:
        writeTypeId in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeObjectRef

        public void writeObjectRef​(Object id)
                            throws IOException
        Overrides:
        writeObjectRef in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • writeObjectId

        public void writeObjectId​(Object id)
                           throws IOException
        Overrides:
        writeObjectId in class com.fasterxml.jackson.core.JsonGenerator
        Throws:
        IOException
      • _verifyValueWrite

        protected final void _verifyValueWrite​(String typeMsg)
                                        throws IOException
        Specified by:
        _verifyValueWrite in class com.fasterxml.jackson.core.base.GeneratorBase
        Throws:
        IOException
      • _releaseBuffers

        protected void _releaseBuffers()
        Specified by:
        _releaseBuffers in class com.fasterxml.jackson.core.base.GeneratorBase
      • _scalarEvent

        protected org.yaml.snakeyaml.events.ScalarEvent _scalarEvent​(String value,
                                                                     org.yaml.snakeyaml.DumperOptions.ScalarStyle style)