Package co.elastic.clients.json
Interface JsonpDeserializer<V>
- All Known Implementing Classes:
BuildFunctionDeserializer
,DelegatingDeserializer
,DelegatingDeserializer.SameType
,ExternallyTaggedUnion.TypedKeysDeserializer
,JsonEnum.Deserializer
,JsonEnum.Deserializer.AllowingBooleans
,JsonpDeserializerBase
,LazyDeserializer
,NamedDeserializer
,ObjectBuilderDeserializer
,ObjectDeserializer
,UnionDeserializer
public interface JsonpDeserializer<V>
-
Method Summary
Modifier and TypeMethodDescriptionEnumSet<jakarta.json.stream.JsonParser.Event>
The JSON events this deserializer accepts as a starting point.default boolean
accepts
(jakarta.json.stream.JsonParser.Event event) Convenience method foracceptedEvents().contains(event)
static <T> JsonpDeserializer<List<T>>
arrayDeserializer
(JsonpDeserializer<T> itemDeserializer) static JsonpDeserializer<Boolean>
default V
deserialize
(jakarta.json.stream.JsonParser parser, JsonpMapper mapper) Deserialize a value.deserialize
(jakarta.json.stream.JsonParser parser, JsonpMapper mapper, jakarta.json.stream.JsonParser.Event event) Deserialize a value.static JsonpDeserializer<Double>
static JsonpDeserializer<Double>
doubleOrNullDeserializer
(double defaultValue) Adouble
deserializer that will return a default value when the JSON value isnull
static <T> JsonpDeserializer<T>
emptyObject
(T value) static <K extends JsonEnum,
V>
JsonpDeserializer<Map<K,V>> enumMapDeserializer
(JsonpDeserializer<K> keyDeserializer, JsonpDeserializer<V> valueDeserializer) static <T> JsonpDeserializer<T>
fixedValue
(T value) static JsonpDeserializer<Float>
static JsonpDeserializer<Integer>
static JsonpDeserializer<Integer>
intOrNullDeserializer
(int defaultValue) Aninteger
deserializer that will return a default value when the JSON value isnull
static <T> JsonpDeserializer<T>
jsonString
(JsonpDeserializer<T> valueDeserializer) Creates a deserializer that will accept a value both as regular JSON and as JSON-in-a-string.static JsonpDeserializer<jakarta.json.JsonValue>
static <T> JsonpDeserializer<T>
lazy
(Supplier<JsonpDeserializer<T>> ctor) static JsonpDeserializer<Long>
EnumSet<jakarta.json.stream.JsonParser.Event>
The native JSON events this deserializer accepts as a starting point.static JsonpDeserializer<Number>
static <T> JsonpDeserializer<T>
Creates a deserializer for a type that delegates to the mapper provided todeserialize(JsonParser, JsonpMapper)
.static <T> JsonpDeserializer<T>
of
(EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, TriFunction<jakarta.json.stream.JsonParser, JsonpMapper, jakarta.json.stream.JsonParser.Event, T> fn) static <T> JsonpDeserializer<T>
of
(EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, BiFunction<jakarta.json.stream.JsonParser, JsonpMapper, T> fn) static JsonpDeserializer<String>
static <T> JsonpDeserializer<Map<String,
T>> stringMapDeserializer
(JsonpDeserializer<T> itemDeserializer) static JsonpDeserializer<Void>
-
Method Details
-
nativeEvents
EnumSet<jakarta.json.stream.JsonParser.Event> nativeEvents()The native JSON events this deserializer accepts as a starting point. For example, native events for a boolean areJsonParser.Event.VALUE_TRUE
andJsonParser.Event.VALUE_FALSE
. -
acceptedEvents
EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents()The JSON events this deserializer accepts as a starting point. For example, events for a boolean areJsonParser.Event.VALUE_TRUE
,JsonParser.Event.VALUE_FALSE
andJsonParser.Event.VALUE_STRING
, the latter being converted to a boolean usingBoolean.parseBoolean(String)
. -
accepts
default boolean accepts(jakarta.json.stream.JsonParser.Event event) Convenience method foracceptedEvents().contains(event)
-
deserialize
Deserialize a value. The value starts at the next state in the JSON stream.Default implementation delegates to
deserialize(JsonParser, JsonpMapper, Event)
after having checked that the next event is part of the accepted events.If the next event is
JsonParser.Event.VALUE_NULL
,null
is returned unlessJsonParser.Event.VALUE_NULL
is part of the deserializer's accepted events.- Parameters:
parser
- the JSON parsermapper
- the JSON-P mapper- Returns:
- the parsed value or null
-
deserialize
V deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper, jakarta.json.stream.JsonParser.Event event) Deserialize a value. The value starts at the current state in the JSON stream.- Parameters:
parser
- the JSON parsermapper
- the JSON-P mapperevent
- the current state ofparser
, which must be part ofacceptedEvents()
- Returns:
- the parsed value
-
of
Creates a deserializer for a type that delegates to the mapper provided todeserialize(JsonParser, JsonpMapper)
. -
of
static <T> JsonpDeserializer<T> of(EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, BiFunction<jakarta.json.stream.JsonParser, JsonpMapper, T> fn) -
of
static <T> JsonpDeserializer<T> of(EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, TriFunction<jakarta.json.stream.JsonParser, JsonpMapper, jakarta.json.stream.JsonParser.Event, T> fn) -
lazy
-
fixedValue
-
emptyObject
-
stringDeserializer
-
integerDeserializer
-
booleanDeserializer
-
longDeserializer
-
floatDeserializer
-
doubleDeserializer
-
doubleOrNullDeserializer
Adouble
deserializer that will return a default value when the JSON value isnull
-
intOrNullDeserializer
Aninteger
deserializer that will return a default value when the JSON value isnull
-
numberDeserializer
-
jsonValueDeserializer
-
voidDeserializer
-
arrayDeserializer
-
stringMapDeserializer
static <T> JsonpDeserializer<Map<String,T>> stringMapDeserializer(JsonpDeserializer<T> itemDeserializer) -
enumMapDeserializer
static <K extends JsonEnum,V> JsonpDeserializer<Map<K,V>> enumMapDeserializer(JsonpDeserializer<K> keyDeserializer, JsonpDeserializer<V> valueDeserializer) -
jsonString
Creates a deserializer that will accept a value both as regular JSON and as JSON-in-a-string.
-