Package com.fasterxml.jackson.core.json
Class JsonGeneratorImpl
java.lang.Object
com.fasterxml.jackson.core.JsonGenerator
com.fasterxml.jackson.core.base.GeneratorBase
com.fasterxml.jackson.core.json.JsonGeneratorImpl
- All Implemented Interfaces:
Versioned
,Closeable
,Flushable
,AutoCloseable
- Direct Known Subclasses:
UTF8JsonGenerator
,WriterBasedJsonGenerator
Intermediate base class shared by JSON-backed generators
like
UTF8JsonGenerator
and WriterBasedJsonGenerator
.- Since:
- 2.1
-
Nested Class Summary
Nested classes/interfaces inherited from class com.fasterxml.jackson.core.JsonGenerator
JsonGenerator.Feature
-
Field Summary
Fields inherited from class com.fasterxml.jackson.core.base.GeneratorBase
SURR1_FIRST, SURR1_LAST, SURR2_FIRST, SURR2_LAST
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionMethod for disabling specified feature (checkJsonGenerator.Feature
for list of features)Method for enabling specified generator feature: checkJsonGenerator.Feature
for list of available features.Method for accessing custom escapes factory uses forJsonGenerator
s it creates.int
Accessor method for testing what is the highest unescaped character configured for this generator.Accessor for getting metadata on capabilities of this generator, based on underlying data format being read (directly or indirectly).Method for defining custom escapes factory uses forJsonGenerator
s it creates.setHighestNonEscapedChar
(int charCode) Method that can be called to request that generator escapes all character codes above specified code point (if positive value); or, to not escape any characters except for ones that must be escaped for the data format (if -1).Method that allows overriding String used for separating root-level JSON values (default is single space character)Get the constraints to apply when performing streaming writes.version()
Implemented with standard version number detection algorithm, typically using a simple generated class, with information extracted from Maven project file during build.Methods inherited from class com.fasterxml.jackson.core.base.GeneratorBase
assignCurrentValue, close, currentValue, flush, getCodec, getFeatureMask, getOutputContext, ioContext, isClosed, isEnabled, overrideStdFeatures, setCodec, setFeatureMask, useDefaultPrettyPrinter, writeBinary, writeFieldName, writeObject, writeRawValue, writeRawValue, writeRawValue, writeRawValue, writeStartObject, writeString, writeTree
Methods inherited from class com.fasterxml.jackson.core.JsonGenerator
canOmitFields, canUseSchema, canWriteBinaryNatively, canWriteFormattedNumbers, canWriteObjectId, canWriteTypeId, configure, copyCurrentEvent, copyCurrentEventExact, copyCurrentStructure, getCurrentValue, getFormatFeatures, getOutputBuffered, getOutputTarget, getPrettyPrinter, getSchema, isEnabled, overrideFormatFeatures, setCurrentValue, setPrettyPrinter, setSchema, writeArray, writeArray, writeArray, writeArray, writeArrayFieldStart, writeBinary, writeBinary, writeBinary, writeBinary, writeBinaryField, writeBoolean, writeBooleanField, writeEmbeddedObject, writeEndArray, writeEndObject, writeFieldId, writeFieldName, writeNull, writeNullField, writeNumber, writeNumber, writeNumber, writeNumber, writeNumber, writeNumber, writeNumber, writeNumber, writeNumber, writeNumberField, writeNumberField, writeNumberField, writeNumberField, writeNumberField, writeNumberField, writeNumberField, writeObjectField, writeObjectFieldStart, writeObjectId, writeObjectRef, writeOmittedField, writePOJO, writePOJOField, writeRaw, writeRaw, writeRaw, writeRaw, writeRaw, writeRawUTF8String, writeStartArray, writeStartArray, writeStartArray, writeStartArray, writeStartObject, writeStartObject, writeString, writeString, writeString, writeStringField, writeTypeId, writeTypePrefix, writeTypeSuffix, writeUTF8String
-
Constructor Details
-
JsonGeneratorImpl
-
-
Method Details
-
version
Description copied from class:GeneratorBase
Implemented with standard version number detection algorithm, typically using a simple generated class, with information extracted from Maven project file during build.- Specified by:
version
in interfaceVersioned
- Overrides:
version
in classGeneratorBase
- Returns:
- Version number of the generator (version of the jar that contains generator implementation class)
-
streamWriteConstraints
Description copied from class:JsonGenerator
Get the constraints to apply when performing streaming writes.- Overrides:
streamWriteConstraints
in classJsonGenerator
-
enable
Description copied from class:JsonGenerator
Method for enabling specified generator feature: checkJsonGenerator.Feature
for list of available features.- Overrides:
enable
in classGeneratorBase
- Parameters:
f
- Feature to enable- Returns:
- This generator, to allow call chaining
-
disable
Description copied from class:JsonGenerator
Method for disabling specified feature (checkJsonGenerator.Feature
for list of features)- Overrides:
disable
in classGeneratorBase
- Parameters:
f
- Feature to disable- Returns:
- This generator, to allow call chaining
-
setHighestNonEscapedChar
Description copied from class:JsonGenerator
Method that can be called to request that generator escapes all character codes above specified code point (if positive value); or, to not escape any characters except for ones that must be escaped for the data format (if -1). To force escaping of all non-ASCII characters, for example, this method would be called with value of 127.Note that generators are NOT required to support setting of value higher than 127, because there are other ways to affect quoting (or lack thereof) of character codes between 0 and 127. Not all generators support concept of escaping, either; if so, calling this method will have no effect.
Default implementation does nothing; sub-classes need to redefine it according to rules of supported data format.
- Overrides:
setHighestNonEscapedChar
in classJsonGenerator
- Parameters:
charCode
- Either -1 to indicate that no additional escaping is to be done; or highest code point not to escape (meaning higher ones will be), if positive value.- Returns:
- This generator, to allow call chaining
-
getHighestEscapedChar
public int getHighestEscapedChar()Description copied from class:JsonGenerator
Accessor method for testing what is the highest unescaped character configured for this generator. This may be either positive value (when escaping configuration has been set and is in effect), or 0 to indicate that no additional escaping is in effect. Some generators may not support additional escaping: for example, generators for binary formats that do not use escaping should simply return 0.- Overrides:
getHighestEscapedChar
in classJsonGenerator
- Returns:
- Currently active limitation for highest non-escaped character, if defined; or 0 to indicate no additional escaping is performed.
-
setCharacterEscapes
Description copied from class:JsonGenerator
Method for defining custom escapes factory uses forJsonGenerator
s it creates.Default implementation does nothing and simply returns this instance.
- Overrides:
setCharacterEscapes
in classJsonGenerator
- Parameters:
esc
-CharacterEscapes
to configure this generator to use, if any;null
if none- Returns:
- This generator, to allow call chaining
-
getCharacterEscapes
Method for accessing custom escapes factory uses forJsonGenerator
s it creates.- Overrides:
getCharacterEscapes
in classJsonGenerator
- Returns:
CharacterEscapes
configured for this generator, if any;null
if none
-
setRootValueSeparator
Description copied from class:JsonGenerator
Method that allows overriding String used for separating root-level JSON values (default is single space character)Default implementation throws
UnsupportedOperationException
.- Overrides:
setRootValueSeparator
in classJsonGenerator
- Parameters:
sep
- Separator to use, if any; null means that no separator is automatically added- Returns:
- This generator, to allow call chaining
-
getWriteCapabilities
Description copied from class:JsonGenerator
Accessor for getting metadata on capabilities of this generator, based on underlying data format being read (directly or indirectly).- Overrides:
getWriteCapabilities
in classJsonGenerator
- Returns:
- Set of write capabilities for content written using this generator
-