public class JsonStreamParserImpl extends JohnzonJsonParserImpl implements JsonChars
Modifier and Type | Class and Description |
---|---|
private static class |
JsonStreamParserImpl.StructureElement |
JohnzonJsonParser.JohnzonJsonParserWrapper
Modifier and Type | Field and Description |
---|---|
private int |
arrayDepth |
private boolean |
autoAdjust |
private int |
availableCharsInBuffer |
private char[] |
buffer |
private int |
bufferLeft |
private int |
bufferPos |
private BufferStrategy.BufferProvider<char[]> |
bufferProvider |
private boolean |
closed |
private int |
currentIntegralNumber |
private long |
currentLine |
private JsonStreamParserImpl.StructureElement |
currentStructureElement |
private int |
endOfValueInBuffer |
private char[] |
fallBackCopyBuffer |
private int |
fallBackCopyBufferLength |
private java.io.Reader |
in |
private boolean |
isCurrentNumberIntegral |
private long |
lastLineBreakPosition |
private int |
maxValueLength |
private int |
objectDepth |
private long |
pastBufferReadCount |
private byte |
previousEvent |
private boolean |
releaseFallBackCopyBufferLength |
private int |
startOfValueInBuffer |
private BufferStrategy.BufferProvider<char[]> |
valueProvider |
BACKSPACE, COMMA_CHAR, COMMA_EVENT, CR, DOT, END_ARRAY, END_ARRAY_CHAR, END_OBJECT, END_OBJECT_CHAR, EOF, EOL, ESCAPE_CHAR, EVT_MAP, EXP_LOWERCASE, EXP_UPPERCASE, FALSE_A, FALSE_E, FALSE_F, FALSE_L, FALSE_S, FORMFEED, KEY_NAME, KEY_SEPARATOR, KEY_SEPARATOR_EVENT, MINUS, NINE, NULL, NULL_L, NULL_N, NULL_U, PLUS, QUOTE_CHAR, SPACE, START_ARRAY, START_ARRAY_CHAR, START_OBJECT, START_OBJECT_CHAR, TAB, TRUE_E, TRUE_R, TRUE_T, TRUE_U, VALUE_FALSE, VALUE_NULL, VALUE_NUMBER, VALUE_STRING, VALUE_TRUE, ZERO
Modifier | Constructor and Description |
---|---|
|
JsonStreamParserImpl(java.io.InputStream inputStream,
java.nio.charset.Charset encoding,
int maxStringLength,
BufferStrategy.BufferProvider<char[]> bufferProvider,
BufferStrategy.BufferProvider<char[]> valueBuffer,
boolean autoAdjust) |
|
JsonStreamParserImpl(java.io.InputStream inputStream,
int maxStringLength,
BufferStrategy.BufferProvider<char[]> bufferProvider,
BufferStrategy.BufferProvider<char[]> valueBuffer,
boolean autoAdjust) |
private |
JsonStreamParserImpl(java.io.InputStream inputStream,
java.io.Reader reader,
java.nio.charset.Charset encoding,
int maxStringLength,
BufferStrategy.BufferProvider<char[]> bufferProvider,
BufferStrategy.BufferProvider<char[]> valueBuffer,
boolean autoAdjust) |
|
JsonStreamParserImpl(java.io.Reader reader,
int maxStringLength,
BufferStrategy.BufferProvider<char[]> bufferProvider,
BufferStrategy.BufferProvider<char[]> valueBuffer,
boolean autoAdjust) |
Modifier and Type | Method and Description |
---|---|
private void |
appendToCopyBuffer(char c) |
void |
close() |
private void |
copyCurrentValue() |
private javax.json.stream.JsonLocation |
createLocation() |
javax.json.stream.JsonParser.Event |
current() |
private javax.json.stream.JsonParsingException |
cust(java.lang.String message) |
protected javax.json.stream.JsonParser.Event |
defaultHandling(char c) |
private void |
doAutoAdjust(int length) |
java.math.BigDecimal |
getBigDecimal() |
protected int |
getBufferExtends(int currentLength) |
protected BufferStrategy.BufferProvider<char[]> |
getCharArrayProvider() |
int |
getInt() |
javax.json.stream.JsonLocation |
getLocation() |
long |
getLong() |
java.lang.String |
getString() |
private javax.json.stream.JsonParser.Event |
handleEndArray() |
private javax.json.stream.JsonParser.Event |
handleEndObject() |
private javax.json.stream.JsonParser.Event |
handleLiteral() |
private javax.json.stream.JsonParser.Event |
handleQuote() |
private javax.json.stream.JsonParser.Event |
handleStartArray() |
private javax.json.stream.JsonParser.Event |
handleStartObject() |
boolean |
hasNext() |
protected javax.json.stream.JsonParser.Event |
internalNext() |
private static boolean |
isAsciiDigit(char value) |
boolean |
isFitLong() |
protected boolean |
isInArray() |
protected boolean |
isInObject() |
boolean |
isIntegralNumber() |
boolean |
isNotTooLong() |
private int |
parseHexDigit(char value) |
private static java.lang.Integer |
parseIntegerFromChars(char[] chars,
int start,
int end) |
private static java.lang.Long |
parseLongFromChars(char[] chars,
int start,
int end) |
private char |
parseUnicodeHexChars() |
protected char |
readNextChar() |
protected char |
readNextNonWhitespaceChar(char c) |
private void |
readNumber() |
private void |
readString() |
private javax.json.stream.JsonParsingException |
tmc() |
private javax.json.stream.JsonParsingException |
uexc(char c,
java.lang.String message) |
private javax.json.stream.JsonParsingException |
uexc(java.lang.String message) |
private javax.json.stream.JsonParsingException |
uexio(java.io.IOException e) |
private void |
unreadChar() |
getArray, getArrayStream, getObject, getObjectStream, getValue, getValueStream, next, skipArray, skipObject
private final boolean autoAdjust
private final char[] buffer
private int bufferPos
private int bufferLeft
private int availableCharsInBuffer
private int startOfValueInBuffer
private int endOfValueInBuffer
private final java.io.Reader in
private final BufferStrategy.BufferProvider<char[]> bufferProvider
private final BufferStrategy.BufferProvider<char[]> valueProvider
private final int maxValueLength
private byte previousEvent
private char[] fallBackCopyBuffer
private boolean releaseFallBackCopyBufferLength
private int fallBackCopyBufferLength
private long currentLine
private long lastLineBreakPosition
private long pastBufferReadCount
private boolean isCurrentNumberIntegral
private int currentIntegralNumber
private JsonStreamParserImpl.StructureElement currentStructureElement
private int arrayDepth
private int objectDepth
private boolean closed
public JsonStreamParserImpl(java.io.InputStream inputStream, int maxStringLength, BufferStrategy.BufferProvider<char[]> bufferProvider, BufferStrategy.BufferProvider<char[]> valueBuffer, boolean autoAdjust)
public JsonStreamParserImpl(java.io.InputStream inputStream, java.nio.charset.Charset encoding, int maxStringLength, BufferStrategy.BufferProvider<char[]> bufferProvider, BufferStrategy.BufferProvider<char[]> valueBuffer, boolean autoAdjust)
public JsonStreamParserImpl(java.io.Reader reader, int maxStringLength, BufferStrategy.BufferProvider<char[]> bufferProvider, BufferStrategy.BufferProvider<char[]> valueBuffer, boolean autoAdjust)
private JsonStreamParserImpl(java.io.InputStream inputStream, java.io.Reader reader, java.nio.charset.Charset encoding, int maxStringLength, BufferStrategy.BufferProvider<char[]> bufferProvider, BufferStrategy.BufferProvider<char[]> valueBuffer, boolean autoAdjust)
private void appendToCopyBuffer(char c)
private void copyCurrentValue()
private void doAutoAdjust(int length)
protected int getBufferExtends(int currentLength)
public final boolean hasNext()
hasNext
in interface javax.json.stream.JsonParser
private static boolean isAsciiDigit(char value)
private int parseHexDigit(char value)
private javax.json.stream.JsonLocation createLocation()
protected final char readNextChar()
protected final char readNextNonWhitespaceChar(char c)
public javax.json.stream.JsonParser.Event current()
current
in interface JohnzonJsonParser
JsonParser.next()
but without propagating the Event pointer to the next entry.private void unreadChar()
protected final javax.json.stream.JsonParser.Event internalNext()
internalNext
in class JohnzonJsonParserImpl
protected javax.json.stream.JsonParser.Event defaultHandling(char c)
private javax.json.stream.JsonParser.Event handleStartObject()
private javax.json.stream.JsonParser.Event handleEndObject()
private javax.json.stream.JsonParser.Event handleStartArray()
private javax.json.stream.JsonParser.Event handleEndArray()
protected boolean isInArray()
isInArray
in class JohnzonJsonParserImpl
true
if we are currently inside an arrayprotected boolean isInObject()
isInObject
in class JohnzonJsonParserImpl
true
if we are currently inside an objectprotected BufferStrategy.BufferProvider<char[]> getCharArrayProvider()
getCharArrayProvider
in class JohnzonJsonParserImpl
private void readString()
private char parseUnicodeHexChars()
private javax.json.stream.JsonParser.Event handleQuote()
private void readNumber()
private javax.json.stream.JsonParser.Event handleLiteral()
public java.lang.String getString()
getString
in interface javax.json.stream.JsonParser
public boolean isIntegralNumber()
isIntegralNumber
in interface javax.json.stream.JsonParser
public boolean isNotTooLong()
isNotTooLong
in interface JohnzonJsonParser
public int getInt()
getInt
in interface javax.json.stream.JsonParser
public long getLong()
getLong
in interface javax.json.stream.JsonParser
public boolean isFitLong()
isFitLong
in interface JohnzonJsonParser
public java.math.BigDecimal getBigDecimal()
getBigDecimal
in interface javax.json.stream.JsonParser
public javax.json.stream.JsonLocation getLocation()
getLocation
in interface javax.json.stream.JsonParser
public void close()
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in interface javax.json.stream.JsonParser
private static java.lang.Long parseLongFromChars(char[] chars, int start, int end)
private static java.lang.Integer parseIntegerFromChars(char[] chars, int start, int end)
private javax.json.stream.JsonParsingException uexc(char c, java.lang.String message)
private javax.json.stream.JsonParsingException uexc(java.lang.String message)
private javax.json.stream.JsonParsingException tmc()
private javax.json.stream.JsonParsingException uexio(java.io.IOException e)
private javax.json.stream.JsonParsingException cust(java.lang.String message)
Copyright © 2014–2022 The Apache Software Foundation. All rights reserved.