| Modifier and Type | Field and Description |
|---|---|
| protected byte[] | _binaryValue
We will hold on to decoded binary data, for duration of
current event, so that multiple calls to
|
| protected boolean | _bufferRecyclable
Flag that indicates whether the input buffer is recycable (and needs to be returned to recycler once we are done) or not. |
| protected ByteArrayBuilder | _byteArrayBuilder
ByteArrayBuilder is needed if 'getBinaryValue' is called. |
| protected int | |
| protected ProtobufField | |
| protected ProtobufMessage | _currentMessage
The innermost Object type ("message" in proto lingo) we are handling. |
| protected long | _currInputProcessed
Number of characters/bytes that were contained in previous blocks (blocks that were already processed prior to the current buffer). |
| protected int | _decodedLength
Length of the value that parser points to, for scalar values that use length prefixes (Strings, binary data). |
| protected byte[] | _inputBuffer
Current buffer from which data is read; generally data is read into buffer from input source, but in some cases pre-loaded buffer is handed to the parser. |
| protected int | _inputEnd
Index of character after last available one in the buffer. |
| protected int | _inputPtr
Pointer to next available character in buffer |
| protected InputStream | _inputStream
Input stream that can be used for reading more content, if one in use. |
| protected boolean | _nameCopied
Flag set to indicate whether the field name is available from the name copy buffer or not (in addition to its String representation being available via read context) |
| protected char[] | _nameCopyBuffer
Temporary buffer that is needed if field name is accessed
using |
| protected int | |
| protected BigDecimal | |
| protected BigInteger | |
| protected double | |
| protected float | |
| protected int | |
| protected long | |
| protected int | _numTypesValid
Bitfield that indicates which numeric representations have been calculated for the current type |
| protected ProtobufSchema | |
| protected int | _state
Current state of the parser. |
| protected ProtobufReadContext | _streamReadContext
Information about parser context, context in which the next token is to be parsed (root, array, object). |
| protected final TextBuffer | _textBuffer
Buffer that contains contents of String values, including field names if necessary (name split across boundary, contains escape sequence, or access needed to char array) |
| protected boolean | _tokenIncomplete
Flag that indicates that the current token has not yet been fully processed, and needs to be finished for some access (or skipped to obtain the next token) |
| protected int | _tokenInputCol
Column on input row that current token starts; 0-based (although in the end it'll be converted to 1-based) |
| protected int | _tokenInputRow
Input row on which current token starts, 1-based |
| protected long | _tokenInputTotal
Total number of bytes/characters read before start of current token. |
| protected static final JacksonFeatureSet | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int | |
| private static final int[] |
| Access | Constructor and Description |
|---|---|
| public | ProtobufParser(ObjectReadContext readCtxt, IOContext ioCtxt, int parserFeatures, ProtobufSchema schema, InputStream in, byte[] inputBuffer, int start, int end, boolean bufferRecyclable)
|
| Modifier and Type | Method and Description |
|---|---|
| private boolean | |
| protected void | |
| protected void | _closeInput()
Implements abstract tools. Abstract method for sub-classes to implement; to be called by
|
| protected final int | |
| protected final long | |
| private int | |
| private final int | |
| private final int | Returns: Character value minus 0x10000; this so that caller can readily expand it to actual surrogates
|
| private int | |
| protected int | |
| private long | |
| protected long | |
| private final ProtobufField | |
| protected byte[] | |
| private final void | |
| private final String | |
| protected void | |
| protected ByteArrayBuilder | |
| protected void | _handleEOF()
Implements abstract tools. Method sub-classes need to implement to check whether end-of-content is allowed at the current decoding position: formats often want to verify the all start/end token pairs match, for example. |
| private JsonToken | |
| private JsonToken | |
| protected final void | _loadToHaveAtLeast(int minAvailable)
Helper method that will try to load at least specified number bytes in input buffer, possible moving existing data around if necessary |
| protected static final long | |
| private final int | |
| private int | |
| private JsonToken | |
| protected void | _releaseBuffers()
Implements abstract tools. Method called to release internal buffers owned by the base reader. |
| private void | |
| private void | |
| private void | |
| private void | |
| private void | |
| private void | |
| private void | |
| private void | |
| protected void | |
| private JsonToken | |
| private void | |
| protected void | |
| protected void | |
| protected final int | |
| protected final long | |
| public void | assignCurrentValue(Object v)
Implements abstract tools. Helper method, usually equivalent to:
|
| public void | close()
Overrides tools. Implements java. Closes the parser so that no further iteration or data access
can be made; will also close the underlying input source
if parser either owns the input source, or feature
|
| protected void | |
| protected void | |
| protected void | |
| protected void | |
| protected void | |
| protected void | |
| public TokenStreamLocation | currentLocation()
Implements abstract tools. Overridden since we do not really have character-based locations, but we do have byte offset to specify. |
| public String | currentName()
Implements abstract tools. Method that can be called to get the name associated with the current event. |
| public TokenStreamLocation | currentTokenLocation()
Implements abstract tools. Overridden since we do not really have character-based locations, but we do have byte offset to specify. |
| public Object | currentValue()
Implements abstract tools. Helper method, usually equivalent to:
Note that "current value" is NOT populated (or used) by Streaming parser; it is only used by higher-level data-binding functionality. |
| public BigInteger | getBigIntegerValue()
Implements abstract tools. Numeric accessor that can be called when the current
token is of type |
| public byte[] | getBinaryValue(Base64Variant b64variant)
Implements abstract tools. Method that can be used to read (and consume -- results may not be accessible using other methods after the call) base64-encoded binary data included in the current textual JSON value. |
| public BigDecimal | getDecimalValue()
Implements abstract tools. Numeric accessor that can be called when the current
token is of type |
| public double | getDoubleValue()
Implements abstract tools. Numeric accessor that can be called when the current
token is of type |
| public Object | getEmbeddedObject()
Overrides tools. Accessor that can be called if (and only if) the current token
is |
| public float | getFloatValue()
Implements abstract tools. Numeric accessor that can be called when the current
token is of type |
| public int | getIntValue()
Implements abstract tools. Numeric accessor that can be called when the current
token is of type |
| public long | getLongValue()
Implements abstract tools. Numeric accessor that can be called when the current
token is of type |
| public JsonParser. | getNumberType()
Implements abstract tools. If current token is of type
|
| public JsonParser. | getNumberTypeFP()
Overrides tools. If current token is of type
|
| public Number | getNumberValue()
Implements abstract tools. Generic number value accessor method that will work for all kinds of numeric values. |
| public final Number | getNumberValueExact()
Overrides tools. Method similar to |
| public ProtobufSchema | getSchema()
Overrides tools. Method for accessing Schema that this parser uses, if any. |
| public String | getString()
Implements abstract tools. Method for accessing textual representation of the current event;
if no current event (before first call to |
| public int | getString(Writer writer)
Overrides tools. Method to read the textual representation of the current token in chunks and pass it to the given Writer. |
| public char[] | getStringCharacters()
Implements abstract tools. Method similar to |
| public int | getStringLength()
Implements abstract tools. Accessor used with |
| public int | getStringOffset()
Implements abstract tools. Accessor used with |
| public String | getValueAsString()
Overrides tools. Method that will try to convert value of current token to a
|
| public String | getValueAsString(String defaultValue)
Overrides tools. Method that will try to convert value of current token to a
|
| public boolean | hasStringCharacters()
Implements abstract tools. Method that can be used to determine whether calling of
|
| public boolean | isNaN()
Implements abstract tools. Accessor for checking whether current token is a special "not-a-number" (NaN) token (including both "NaN" AND positive/negative infinity!). |
| protected final boolean | |
| protected final void | |
| public String | nextName()
Overrides tools. Method that fetches next token (as if calling |
| public boolean | nextName(SerializableString sstr)
Overrides tools. Method that fetches next token (as if calling |
| public int | nextNameMatch(PropertyNameMatcher matcher)
Overrides tools. Method that tries to match next token from stream as |
| public String | nextStringValue()
Overrides tools. Method that fetches next token (as if calling |
| public JsonToken | nextToken()
Implements abstract tools. Main iteration method, which will advance stream enough to determine type of the next token, if any. |
| public int | readBinaryValue(Base64Variant b64variant, OutputStream out)
Overrides tools. Similar to |
| public int | releaseBuffered(OutputStream out)
Overrides tools. Method that can be called to push back any content that has been read but not consumed by the parser. |
| public void | |
| public JacksonFeatureSet | streamReadCapabilities()
Overrides tools. Accessor for getting metadata on capabilities of this parser, based on underlying data format being read (directly or indirectly). |
| public ProtobufReadContext | streamReadContext()
Implements abstract tools. Method that can be used to access current parsing context reader is in. There are 3 different types: root, array and object contexts, with slightly different available information. |
| public Object | streamReadInputSource()
Implements abstract tools. Method that can be used to get access to object that is used
to access input being parsed; this is usually either
|
| public Version | version()
Implements abstract tools. Implements tools. Accessor for getting version of the core package, given a parser instance. |