Package co.elastic.clients.json
Class JsonpDeserializer<V>
java.lang.Object
co.elastic.clients.json.JsonpDeserializer<V>
- Direct Known Subclasses:
BuildFunctionDeserializer
,DelegatingDeserializer
,ObjectBuilderDeserializer
,StringEnum.Deserializer
,Union2.JsonpParser
public abstract class JsonpDeserializer<V>
extends java.lang.Object
-
Constructor Summary
Constructors Modifier Constructor Description protected
JsonpDeserializer(java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents)
-
Method Summary
Modifier and Type Method Description java.util.EnumSet<jakarta.json.stream.JsonParser.Event>
acceptedEvents()
The json events this deserializer accepts as a starting pointboolean
accepts(jakarta.json.stream.JsonParser.Event event)
Convenience method foracceptedEvents.contains(event)
protected static java.util.EnumSet<jakarta.json.stream.JsonParser.Event>
allAcceptedEvents(JsonpDeserializer<?>... deserializers)
Combines accepted events from a number of deserializersstatic <T> JsonpDeserializer<java.util.List<T>>
arrayDeserializer(JsonpDeserializer<T> itemDeserializer)
static JsonpDeserializer<java.lang.Boolean>
booleanDeserializer()
V
deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper)
Parse a value.abstract V
deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper, jakarta.json.stream.JsonParser.Event event)
Parse a value.static JsonpDeserializer<java.lang.Double>
doubleDeserializer()
static <T> JsonpDeserializer<T>
emptyObject(T value)
protected void
ensureAccepts(jakarta.json.stream.JsonParser parser, jakarta.json.stream.JsonParser.Event event)
static <T> JsonpDeserializer<T>
fixedValue(T value)
static JsonpDeserializer<java.lang.Float>
floatDeserializer()
static JsonpDeserializer<java.lang.Integer>
integerDeserializer()
static JsonpDeserializer<jakarta.json.JsonValue>
jsonValueDeserializer()
static <B, T> JsonpDeserializer<T>
lazy(java.util.function.Supplier<B> builderCtor, java.util.function.Consumer<DelegatingDeserializer<B>> builderSetup, java.util.function.Function<B,T> buildFn)
static <T> JsonpDeserializer<T>
lazy(java.util.function.Supplier<JsonpDeserializer<T>> builder)
static <T> JsonpDeserializer<T>
lazy(java.util.function.Supplier<JsonpDeserializer<T>> builder, java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents)
static <B, T> InstanceDeserializer<B,ObjectBuilder<T>>
lazyInstance(java.util.function.Supplier<B> builderCtor, java.util.function.Consumer<DelegatingDeserializer<B>> builderSetup, java.util.function.Function<B,T> buildFn)
static JsonpDeserializer<java.lang.Long>
longDeserializer()
static JsonpDeserializer<java.lang.Number>
numberDeserializer()
static <T> JsonpDeserializer<T>
of(java.lang.Class<T> clazz)
Creates a deserializer for a class that delegates to the mapper provided todeserialize(JsonParser, JsonpMapper)
.static <T> JsonpDeserializer<T>
of(java.util.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(java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, java.util.function.BiFunction<jakarta.json.stream.JsonParser,JsonpMapper,T> fn)
static JsonpDeserializer<java.lang.String>
stringDeserializer()
static <T> JsonpDeserializer<java.util.Map<java.lang.String,T>>
stringMapDeserializer(JsonpDeserializer<T> itemDeserializer)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
JsonpDeserializer
protected JsonpDeserializer(java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents)
-
-
Method Details
-
allAcceptedEvents
protected static java.util.EnumSet<jakarta.json.stream.JsonParser.Event> allAcceptedEvents(JsonpDeserializer<?>... deserializers)Combines accepted events from a number of deserializers -
acceptedEvents
public final java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents()The json events this deserializer accepts as a starting point -
accepts
public final boolean accepts(jakarta.json.stream.JsonParser.Event event)Convenience method foracceptedEvents.contains(event)
-
ensureAccepts
protected final void ensureAccepts(jakarta.json.stream.JsonParser parser, jakarta.json.stream.JsonParser.Event event) -
deserialize
Parse a value. The value starts at the next state in the json stream.- Parameters:
parser
- the json parsermapper
- the jsonp mapper- Returns:
- the parsed value
-
deserialize
public abstract V deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper, jakarta.json.stream.JsonParser.Event event)Parse a value. The value starts at the current state in the json stream. This method will usually start withensureAccepts(parser, event)
to ensure correctness of the starting state.- Parameters:
parser
- the json parsermapper
- the jsonp mapperevent
- the current state ofparser
, which must be part ofacceptedEvents
- Returns:
- the parsed value
-
of
Creates a deserializer for a class that delegates to the mapper provided todeserialize(JsonParser, JsonpMapper)
. -
of
public static <T> JsonpDeserializer<T> of(java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, TriFunction<jakarta.json.stream.JsonParser,JsonpMapper,jakarta.json.stream.JsonParser.Event,T> fn) -
of
public static <T> JsonpDeserializer<T> of(java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents, java.util.function.BiFunction<jakarta.json.stream.JsonParser,JsonpMapper,T> fn) -
lazy
public static <T> JsonpDeserializer<T> lazy(java.util.function.Supplier<JsonpDeserializer<T>> builder) -
lazy
public static <T> JsonpDeserializer<T> lazy(java.util.function.Supplier<JsonpDeserializer<T>> builder, java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents) -
lazy
public static <B, T> JsonpDeserializer<T> lazy(java.util.function.Supplier<B> builderCtor, java.util.function.Consumer<DelegatingDeserializer<B>> builderSetup, java.util.function.Function<B,T> buildFn) -
lazyInstance
public static <B, T> InstanceDeserializer<B,ObjectBuilder<T>> lazyInstance(java.util.function.Supplier<B> builderCtor, java.util.function.Consumer<DelegatingDeserializer<B>> builderSetup, java.util.function.Function<B,T> buildFn) -
fixedValue
-
emptyObject
-
stringDeserializer
-
integerDeserializer
-
booleanDeserializer
-
longDeserializer
-
floatDeserializer
-
doubleDeserializer
-
numberDeserializer
-
jsonValueDeserializer
-
arrayDeserializer
public static <T> JsonpDeserializer<java.util.List<T>> arrayDeserializer(JsonpDeserializer<T> itemDeserializer) -
stringMapDeserializer
public static <T> JsonpDeserializer<java.util.Map<java.lang.String,T>> stringMapDeserializer(JsonpDeserializer<T> itemDeserializer)
-