| Modifier and Type | Field and Description |
|---|---|
| protected ByteAccumulator | _buffered
Object used in cases where we need to buffer content to calculate length-prefix. |
| protected boolean | _complete
Flag that is set when the whole content is complete, can be output. |
| protected byte[] | _currBuffer
Currently active output buffer, place where appends occur. |
| protected ProtobufField | _currField
Field to be output next; set when |
| protected ProtobufMessage | _currMessage
Type of protobuf message that is currently being output: usually matches write context, but for arrays may indicate "parent" of array. |
| protected int | |
| protected int | |
| protected boolean | |
| protected byte[] | _origCurrBuffer
The first allocated (or recycled) buffer instance; needed to avoid issue [dataformat-protobuf#14]. |
| protected final OutputStream | _output
Ultimate destination |
| protected ProtobufWriteContext | _pbContext
Current context, in form we can use it. |
| protected ProtobufWriteContext | _rootContext
Reference to the root context since that is needed for serialization |
| protected ProtobufSchema | |
| protected final StreamWriteConstraints | |
| protected boolean | _writeTag
Flag that indicates whether values should be written with tag or not; false for packed arrays, true for others. |
| protected static final JsonWriteContext | BOGUS_WRITE_CONTEXT
Since our context object does NOT implement standard write context, need to do something like use a placeholder... |
| protected static final ProtobufField | UNKNOWN_FIELD
This instance is used as a placeholder for cases where we do not know actual field and want to simply skip over any values that caller tries to write for it. |
| protected static final ProtobufMessage | UNKNOWN_MESSAGE
This is used as a placeholder for case where we don't have an actual message to use, but know (from context) that one is expected. |
| private static final Charset |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| protected void | |
| protected void | |
| protected void | |
| protected final void | |
| protected final void | |
| private final void | _finishBuffering()
Helper method called when the current buffering scope is closed; when packed array is completed (`writeEndArray()`) or record is completed (`writeEndObject()`). |
| protected void | _releaseBuffers()
Implements abstract com. Method called to release any buffers generator may be holding, once generator is being closed. |
| protected void | |
| private void | |
| protected void | |
| private final void | _startBuffering(int typedTag)
Method called when buffering an entry that should be prefixed with a type tag. |
| private final void | |
| private void | |
| private void | |
| protected final void | |
| protected void | _verifyValueWrite(String
Additional message used for generating exception message
if value output is NOT legal in current generator output state. typeMsg)Implements abstract com. Method called before trying to write a value (scalar or structured), to verify that this is legal in current output state, as well as to output separators if and as necessary. |
| protected void | |
| protected void | |
| protected void | |
| private final void | |
| private final void | |
| private final void | |
| private final void | |
| protected void | |
| private void | |
| private void | |
| private void | |
| private void | |
| private void | |
| private void | |
| private final int | |
| private final void | |
| private final int | |
| private final void | |
| private final void | |
| private final int | |
| private final void | |
| public void | assignCurrentValue(Object
Current value to assign for the current context of this generator v)Overrides com. Helper method, usually equivalent to:
|
| public boolean | canUseSchema(FormatSchema
Schema to check schema)Overrides com. Method that can be used to verify that given schema can be used with
this generator (using |
| public boolean | canWriteBinaryNatively()
Overrides com. Introspection method that may be called to see if the underlying data format supports "native" binary data; that is, an efficient output of binary content without encoding. |
| public void | close()
Overrides com. Implements java. Method called to close this generator, so that no more content can be written. |
| public Object | currentValue()
Overrides com. Helper method, usually equivalent to:
Note that "current value" is NOT populated (or used) by Streaming parser or generators; it is only used by higher-level data-binding functionality. |
| public final void | flush()
Implements abstract com. Implements java. Method called to flush any buffered content to the underlying target (output stream, writer), and to flush the target itself as well. |
| public Object | getCurrentValue()
Overrides com.
Deprecated
Alias for |
| public int | getOutputBuffered()
Overrides com. Calculating actual amount of buffering is somewhat complicated, and can not necessarily give 100% accurate answer due to presence of VInt encoding for length indicators. |
| public Object | getOutputTarget()
Overrides com. Method that can be used to get access to object that is used
as target for generated output; this is usually either
|
| public ProtobufSchema | getSchema()
Overrides com. Method for accessing Schema that this generator uses, if any; |
| public JacksonFeatureSet | getWriteCapabilities()
Overrides com. Accessor for getting metadata on capabilities of this generator, based on underlying data format being read (directly or indirectly). |
| public void | setCurrentValue(Object
Current value to assign for the current context of this generator v)Overrides com.
Deprecated
Alias for |
| public ProtobufGenerator | setPrettyPrinter(PrettyPrinter
PrettyPrinter to assign, if any; null if noneOverrides com. Method for setting a custom pretty printer, which is usually used to add indentation for improved human readability. |
| public void | |
| public void | setSchema(FormatSchema
Schema to use schema)Overrides com. Method to call to make this generator use specified schema. |
| public StreamWriteConstraints | streamWriteConstraints()
Overrides com. Get the constraints to apply when performing streaming writes. |
| public ProtobufGenerator | useDefaultPrettyPrinter()
Overrides com. Not sure whether to throw an exception or just do no-op; for now, latter. |
| public Version | version()
Overrides com. Implements com. Implemented with standard version number detection algorithm, typically using a simple generated class, with information extracted from Maven project file during build. |
| public void | writeArray(int[]
Array that contains values to write array, int Offset of the first element to write, within array offset, int Number of elements in array to write, from `offset` to `offset + len - 1` length)Overrides com. Value write method that can be called to write a single
array (sequence of |
| public void | writeArray(long[]
Array that contains values to write array, int Offset of the first element to write, within array offset, int Number of elements in array to write, from `offset` to `offset + len - 1` length)Overrides com. Value write method that can be called to write a single
array (sequence of |
| public void | writeArray(double[]
Array that contains values to write array, int Offset of the first element to write, within array offset, int Number of elements in array to write, from `offset` to `offset + len - 1` length)Overrides com. Value write method that can be called to write a single
array (sequence of |
| public void | writeBinary(Base64Variant
Base64 variant to use: defines details such as
whether padding is used (and if so, using which character);
what is the maximum line length before adding linefeed,
and also the underlying alphabet to use. b64variant, byte[] Buffer that contains binary data to write data, int Offset in offset, int data of the first byte of data to writeLength of data to write len)Implements abstract com. Method that will output given chunk of binary data as base64 encoded, as a complete String value (surrounded by double quotes). |
| public void | writeBoolean(boolean
Boolean value to write state)Implements abstract com. Method for outputting literal JSON boolean value (one of Strings 'true' and 'false'). |
| public final void | writeEndArray()
Implements abstract com. Method for writing closing marker of a JSON Array value (character ']'; plus possible white space decoration if pretty-printing is enabled). |
| public final void | writeEndObject()
Implements abstract com. Method for writing closing marker of an Object value (character '}'; plus possible white space decoration if pretty-printing is enabled). |
| public final void | writeFieldName(String
Field name to write name)Implements abstract com. Method for writing a field name (JSON String surrounded by double quotes: syntactically identical to a JSON String value), possibly decorated by white space if pretty-printing is enabled. |
| public final void | writeFieldName(SerializableString
Field name to write sstr)Overrides com. Method similar to |
| public void | writeNull()
Implements abstract com. Method for outputting literal JSON null value. |
| public void | writeNumber(int
Number value to write v)Implements abstract com. Method for outputting given value as JSON number. |
| public void | writeNumber(long
Number value to write v)Implements abstract com. Method for outputting given value as JSON number. |
| public void | writeNumber(BigInteger
Number value to write v)Implements abstract com. Method for outputting given value as JSON number. |
| public void | writeNumber(double
Number value to write d)Implements abstract com. Method for outputting indicate JSON numeric value. |
| public void | writeNumber(float
Number value to write f)Implements abstract com. Method for outputting indicate JSON numeric value. |
| public void | writeNumber(BigDecimal
Number value to write v)Implements abstract com. Method for outputting indicate JSON numeric value. |
| public void | writeNumber(String
Textual (possibly formatted) number representation to write encodedValue)Implements abstract com. Write method that can be used for custom numeric types that can not be (easily?) converted to "standard" Java number types. |
| public void | writeRaw(String
Textual contents to include as-is in output. text)Implements abstract com. Method that will force generator to copy input text verbatim with no modifications (including that no escaping is done and no separators are added even if context [array, object] would otherwise require such). |
| public void | writeRaw(String
String that has contents to include as-is in output text, int Offset within offset, int text of the first character to outputLength of content (from len)text, starting at offset offset) to outputImplements abstract com. Method that will force generator to copy input text verbatim with no modifications (including that no escaping is done and no separators are added even if context [array, object] would otherwise require such). |
| public void | writeRaw(char[]
Buffer that has contents to include as-is in output text, int Offset within offset, int text of the first character to outputLength of content (from len)text, starting at offset offset) to outputImplements abstract com. Method that will force generator to copy input text verbatim with no modifications (including that no escaping is done and no separators are added even if context [array, object] would otherwise require such). |
| public void | writeRaw(char
Character to included in output c)Implements abstract com. Method that will force generator to copy input text verbatim with no modifications (including that no escaping is done and no separators are added even if context [array, object] would otherwise require such). |
| public void | writeRawUTF8String(byte[]
Buffer that contains String value to write text, int Offset in offset, int buffer of the first byte of String value to writeLength of the String value (in characters) to write len)Implements abstract com. Method similar to |
| public void | writeRawValue(String
Textual contents to included in output text)Overrides com. Method that will force generator to copy input text verbatim without any modifications, but assuming it must constitute a single legal JSON value (number, string, boolean, null, Array or List). |
| public void | writeRawValue(String text, int offset, int len)
Overrides com.
|
| public void | writeRawValue(char[] text, int offset, int len)
Overrides com.
|
| public final void | writeStartArray()
Implements abstract com. Method for writing starting marker of a Array value (for JSON this is character '['; plus possible white space decoration if pretty-printing is enabled). |
| public final void | writeStartObject()
Implements abstract com. Method for writing starting marker of an Object value (character '{'; plus possible white space decoration if pretty-printing is enabled). |
| public void | writeString(String
Text value to write text)Implements abstract com. Method for outputting a String value. |
| public void | writeString(char[]
Buffer that contains String value to write text, int Offset in offset, int buffer of the first character of String value to writeLength of the String value (in characters) to write clen)Implements abstract com. Method for outputting a String value. |
| public final void | writeString(SerializableString
Pre-encoded String value to write sstr)Overrides com. Method similar to |
| public final void | writeUTF8String(byte[]
Buffer that contains String value to write text, int Offset in offset, int buffer of the first byte of String value to writeLength of the String value (in characters) to write len)Implements abstract com. Method similar to |