public abstract class JsonGeneratorImpl extends GeneratorBase
UTF8JsonGenerator and WriterBasedJsonGenerator.JsonGenerator.Feature| Modifier and Type | Field and Description | 
|---|---|
protected boolean | 
_cfgUnqNames
Flag that is set if quoting is not to be added around
 JSON Object property names. 
 | 
protected CharacterEscapes | 
_characterEscapes
Definition of custom character escapes to use for generators created
 by this factory, if any. 
 | 
protected IOContext | 
_ioContext  | 
protected int | 
_maximumNonEscapedChar
Value between 128 (0x80) and 65535 (0xFFFF) that indicates highest
 Unicode code point that will not need escaping; or 0 to indicate
 that all characters can be represented without escaping. 
 | 
protected int[] | 
_outputEscapes
Currently active set of output escape code definitions (whether
 and how to escape or not) for 7-bit ASCII range (first 128
 character codes). 
 | 
protected SerializableString | 
_rootValueSeparator
Separator to use, if any, between root-level values. 
 | 
protected static JacksonFeatureSet<StreamWriteCapability> | 
JSON_WRITE_CAPABILITIES
Default capabilities for JSON generator implementations which do not
 different from "general textual" defaults 
 | 
protected static int[] | 
sOutputEscapes
This is the default set of escape codes, over 7-bit ASCII range
 (first 128 character codes), used for single-byte UTF-8 characters. 
 | 
_cfgNumbersAsStrings, _closed, _features, _objectCodec, _writeContext, DERIVED_FEATURES_MASK, MAX_BIG_DECIMAL_SCALE, SURR1_FIRST, SURR1_LAST, SURR2_FIRST, SURR2_LAST, WRITE_BINARY, WRITE_BOOLEAN, WRITE_NULL, WRITE_NUMBER, WRITE_RAW, WRITE_STRING_cfgPrettyPrinter, DEFAULT_BINARY_WRITE_CAPABILITIES, DEFAULT_TEXTUAL_WRITE_CAPABILITIES, DEFAULT_WRITE_CAPABILITIES| Constructor and Description | 
|---|
JsonGeneratorImpl(IOContext ctxt,
                 int features,
                 ObjectCodec codec)  | 
| Modifier and Type | Method and Description | 
|---|---|
protected void | 
_checkStdFeatureChanges(int newFeatureFlags,
                       int changedFeatures)
Helper method called to verify changes to standard features. 
 | 
protected void | 
_reportCantWriteValueExpectName(String typeMsg)  | 
protected void | 
_verifyPrettyValueWrite(String typeMsg,
                       int status)  | 
JsonGenerator | 
disable(JsonGenerator.Feature f)
Method for disabling specified feature
 (check  
JsonGenerator.Feature for list of features) | 
JsonGenerator | 
enable(JsonGenerator.Feature f)
Method for enabling specified generator feature:
 check  
JsonGenerator.Feature for list of available features. | 
CharacterEscapes | 
getCharacterEscapes()
Method for accessing custom escapes factory uses for  
JsonGenerators
 it creates. | 
int | 
getHighestEscapedChar()
Accessor method for testing what is the highest unescaped character
 configured for this generator. 
 | 
JacksonFeatureSet<StreamWriteCapability> | 
getWriteCapabilities()
Accessor for getting metadata on capabilities of this generator, based on
 underlying data format being read (directly or indirectly). 
 | 
JsonGenerator | 
setCharacterEscapes(CharacterEscapes esc)
Method for defining custom escapes factory uses for  
JsonGenerators
 it creates. | 
JsonGenerator | 
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). 
 | 
JsonGenerator | 
setRootValueSeparator(SerializableString sep)
Method that allows overriding String used for separating root-level
 JSON values (default is single space character) 
 | 
Version | 
version()
Implemented with standard version number detection algorithm, typically using
 a simple generated class, with information extracted from Maven project file
 during build. 
 | 
_asString, _constructDefaultPrettyPrinter, _decodeSurrogate, _releaseBuffers, _verifyValueWrite, close, flush, getCodec, getCurrentValue, getFeatureMask, getOutputContext, isClosed, isEnabled, overrideStdFeatures, setCodec, setCurrentValue, setFeatureMask, useDefaultPrettyPrinter, writeBinary, writeFieldName, writeObject, writeRawValue, writeRawValue, writeRawValue, writeRawValue, writeStartObject, writeString, writeTree_copyCurrentContents, _reportError, _reportUnsupportedOperation, _throwInternal, _verifyOffsets, _writeSimpleObject, assignCurrentValue, canOmitFields, canUseSchema, canWriteBinaryNatively, canWriteFormattedNumbers, canWriteObjectId, canWriteTypeId, configure, copyCurrentEvent, copyCurrentStructure, currentValue, getFormatFeatures, getOutputBuffered, getOutputTarget, getPrettyPrinter, getSchema, isEnabled, overrideFormatFeatures, 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, writeUTF8Stringprotected static final int[] sOutputEscapes
protected static final JacksonFeatureSet<StreamWriteCapability> JSON_WRITE_CAPABILITIES
protected final IOContext _ioContext
protected int[] _outputEscapes
protected int _maximumNonEscapedChar
NOTE: not all sub-classes make use of this setting.
protected CharacterEscapes _characterEscapes
protected SerializableString _rootValueSeparator
protected boolean _cfgUnqNames
public JsonGeneratorImpl(IOContext ctxt, int features, ObjectCodec codec)
public Version version()
GeneratorBaseversion in interface Versionedversion in class GeneratorBasepublic JsonGenerator enable(JsonGenerator.Feature f)
JsonGeneratorJsonGenerator.Feature for list of available features.enable in class GeneratorBasef - Feature to enablepublic JsonGenerator disable(JsonGenerator.Feature f)
JsonGeneratorJsonGenerator.Feature for list of features)disable in class GeneratorBasef - Feature to disableprotected void _checkStdFeatureChanges(int newFeatureFlags,
                                       int changedFeatures)
GeneratorBase_checkStdFeatureChanges in class GeneratorBasenewFeatureFlags - Bitflag of standard features after they were changedchangedFeatures - Bitflag of standard features for which setting
    did changepublic JsonGenerator setHighestNonEscapedChar(int charCode)
JsonGeneratorNote 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.
setHighestNonEscapedChar in class JsonGeneratorcharCode - 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.public int getHighestEscapedChar()
JsonGeneratorgetHighestEscapedChar in class JsonGeneratorpublic JsonGenerator setCharacterEscapes(CharacterEscapes esc)
JsonGeneratorJsonGenerators
 it creates.
Default implementation does nothing and simply returns this instance.
setCharacterEscapes in class JsonGeneratoresc - CharacterEscapes to configure this generator to use, if any; null if nonepublic CharacterEscapes getCharacterEscapes()
JsonGenerators
 it creates.getCharacterEscapes in class JsonGeneratorCharacterEscapes configured for this generator, if any; null if nonepublic JsonGenerator setRootValueSeparator(SerializableString sep)
JsonGenerator
 Default implementation throws UnsupportedOperationException.
setRootValueSeparator in class JsonGeneratorsep - Separator to use, if any; null means that no separator is
   automatically addedpublic JacksonFeatureSet<StreamWriteCapability> getWriteCapabilities()
JsonGeneratorgetWriteCapabilities in class JsonGeneratorprotected void _verifyPrettyValueWrite(String typeMsg, int status) throws IOException
IOExceptionprotected void _reportCantWriteValueExpectName(String typeMsg) throws IOException
IOExceptionCopyright © 2008–2021 FasterXML. All rights reserved.