- java.lang.Object
-
- org.eclipse.parsson.JsonParserImpl
-
- All Implemented Interfaces:
jakarta.json.stream.JsonParser
,java.io.Closeable
,java.lang.AutoCloseable
public class JsonParserImpl extends java.lang.Object implements jakarta.json.stream.JsonParser
JSON parser implementation. NoneContext, ArrayContext, ObjectContext is used to go to next parser state.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
JsonParserImpl.ArrayContext
private class
JsonParserImpl.Context
private class
JsonParserImpl.NoneContext
private class
JsonParserImpl.ObjectContext
private class
JsonParserImpl.SkippingContext
private static class
JsonParserImpl.Stack
-
Field Summary
Fields Modifier and Type Field Description private boolean
closed
private JsonParserImpl.Context
currentContext
private jakarta.json.stream.JsonParser.Event
currentEvent
private JsonContext
jsonContext
private JsonParserImpl.Stack
stack
private JsonTokenizer
tokenizer
-
Constructor Summary
Constructors Constructor Description JsonParserImpl(java.io.InputStream in, java.nio.charset.Charset encoding, JsonContext jsonContext)
JsonParserImpl(java.io.InputStream in, JsonContext jsonContext)
JsonParserImpl(java.io.Reader reader, JsonContext jsonContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
jakarta.json.stream.JsonParser.Event
currentEvent()
jakarta.json.JsonArray
getArray()
private jakarta.json.JsonArray
getArray(jakarta.json.JsonArrayBuilder builder)
java.util.stream.Stream<jakarta.json.JsonValue>
getArrayStream()
java.math.BigDecimal
getBigDecimal()
private java.lang.CharSequence
getCharSequence()
int
getInt()
jakarta.json.stream.JsonLocation
getLastCharLocation()
jakarta.json.stream.JsonLocation
getLocation()
long
getLong()
private <T> T
getNumberValue(java.util.function.Function<JsonTokenizer,T> tokenizerFunction, java.util.function.Function<jakarta.json.stream.JsonParser.Event,java.lang.String> exceptionMessageFunction)
jakarta.json.JsonObject
getObject()
private jakarta.json.JsonObject
getObject(jakarta.json.JsonObjectBuilder builder)
java.util.stream.Stream<java.util.Map.Entry<java.lang.String,jakarta.json.JsonValue>>
getObjectStream()
java.lang.String
getString()
jakarta.json.JsonValue
getValue()
java.util.stream.Stream<jakarta.json.JsonValue>
getValueStream()
boolean
hasNext()
(package private) boolean
isDefinitelyInt()
(package private) boolean
isDefinitelyLong()
boolean
isIntegralNumber()
jakarta.json.stream.JsonParser.Event
next()
private jakarta.json.stream.JsonParsingException
parsingException(JsonTokenizer.JsonToken token, java.lang.String expectedTokens)
void
skipArray()
void
skipObject()
-
-
-
Field Detail
-
currentContext
private JsonParserImpl.Context currentContext
-
currentEvent
private jakarta.json.stream.JsonParser.Event currentEvent
-
stack
private final JsonParserImpl.Stack stack
-
tokenizer
private final JsonTokenizer tokenizer
-
closed
private boolean closed
-
jsonContext
private final JsonContext jsonContext
-
-
Constructor Detail
-
JsonParserImpl
public JsonParserImpl(java.io.Reader reader, JsonContext jsonContext)
-
JsonParserImpl
public JsonParserImpl(java.io.InputStream in, JsonContext jsonContext)
-
JsonParserImpl
public JsonParserImpl(java.io.InputStream in, java.nio.charset.Charset encoding, JsonContext jsonContext)
-
-
Method Detail
-
getString
public java.lang.String getString()
- Specified by:
getString
in interfacejakarta.json.stream.JsonParser
-
getNumberValue
private <T> T getNumberValue(java.util.function.Function<JsonTokenizer,T> tokenizerFunction, java.util.function.Function<jakarta.json.stream.JsonParser.Event,java.lang.String> exceptionMessageFunction)
-
isIntegralNumber
public boolean isIntegralNumber()
- Specified by:
isIntegralNumber
in interfacejakarta.json.stream.JsonParser
-
getInt
public int getInt()
- Specified by:
getInt
in interfacejakarta.json.stream.JsonParser
-
isDefinitelyInt
boolean isDefinitelyInt()
-
isDefinitelyLong
boolean isDefinitelyLong()
-
getLong
public long getLong()
- Specified by:
getLong
in interfacejakarta.json.stream.JsonParser
-
getBigDecimal
public java.math.BigDecimal getBigDecimal()
- Specified by:
getBigDecimal
in interfacejakarta.json.stream.JsonParser
-
getArray
public jakarta.json.JsonArray getArray()
- Specified by:
getArray
in interfacejakarta.json.stream.JsonParser
-
getObject
public jakarta.json.JsonObject getObject()
- Specified by:
getObject
in interfacejakarta.json.stream.JsonParser
-
getValue
public jakarta.json.JsonValue getValue()
- Specified by:
getValue
in interfacejakarta.json.stream.JsonParser
-
getArrayStream
public java.util.stream.Stream<jakarta.json.JsonValue> getArrayStream()
- Specified by:
getArrayStream
in interfacejakarta.json.stream.JsonParser
-
getObjectStream
public java.util.stream.Stream<java.util.Map.Entry<java.lang.String,jakarta.json.JsonValue>> getObjectStream()
- Specified by:
getObjectStream
in interfacejakarta.json.stream.JsonParser
-
getValueStream
public java.util.stream.Stream<jakarta.json.JsonValue> getValueStream()
- Specified by:
getValueStream
in interfacejakarta.json.stream.JsonParser
-
skipArray
public void skipArray()
- Specified by:
skipArray
in interfacejakarta.json.stream.JsonParser
-
skipObject
public void skipObject()
- Specified by:
skipObject
in interfacejakarta.json.stream.JsonParser
-
getArray
private jakarta.json.JsonArray getArray(jakarta.json.JsonArrayBuilder builder)
-
getCharSequence
private java.lang.CharSequence getCharSequence()
-
getObject
private jakarta.json.JsonObject getObject(jakarta.json.JsonObjectBuilder builder)
-
getLocation
public jakarta.json.stream.JsonLocation getLocation()
- Specified by:
getLocation
in interfacejakarta.json.stream.JsonParser
-
getLastCharLocation
public jakarta.json.stream.JsonLocation getLastCharLocation()
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfacejakarta.json.stream.JsonParser
-
next
public jakarta.json.stream.JsonParser.Event next()
- Specified by:
next
in interfacejakarta.json.stream.JsonParser
-
currentEvent
public jakarta.json.stream.JsonParser.Event currentEvent()
- Specified by:
currentEvent
in interfacejakarta.json.stream.JsonParser
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfacejakarta.json.stream.JsonParser
-
parsingException
private jakarta.json.stream.JsonParsingException parsingException(JsonTokenizer.JsonToken token, java.lang.String expectedTokens)
-
-