Package co.elastic.clients.json
Class UnionDeserializer<Union,Kind,Member>
java.lang.Object
co.elastic.clients.json.UnionDeserializer<Union,Kind,Member>
- All Implemented Interfaces:
JsonpDeserializer<Union>
public class UnionDeserializer<Union,Kind,Member> extends java.lang.Object implements JsonpDeserializer<Union>
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
UnionDeserializer.AmbiguousUnionException
static class
UnionDeserializer.Builder<Union,Kind,Member>
-
Constructor Summary
Constructors Constructor Description UnionDeserializer(java.util.List<co.elastic.clients.json.UnionDeserializer.SingleMemberHandler<Union,Kind,Member>> objectMembers, java.util.Map<jakarta.json.stream.JsonParser.Event,co.elastic.clients.json.UnionDeserializer.EventHandler<Union,Kind,Member>> otherMembers, java.util.function.BiFunction<Kind,Member,Union> buildFn)
-
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 point.Union
deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper)
Deserialize a value.Union
deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper, jakarta.json.stream.JsonParser.Event event)
Deserialize a value.java.util.EnumSet<jakarta.json.stream.JsonParser.Event>
nativeEvents()
The native JSON events this deserializer accepts as a starting point.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface co.elastic.clients.json.JsonpDeserializer
accepts
-
Constructor Details
-
UnionDeserializer
public UnionDeserializer(java.util.List<co.elastic.clients.json.UnionDeserializer.SingleMemberHandler<Union,Kind,Member>> objectMembers, java.util.Map<jakarta.json.stream.JsonParser.Event,co.elastic.clients.json.UnionDeserializer.EventHandler<Union,Kind,Member>> otherMembers, java.util.function.BiFunction<Kind,Member,Union> buildFn)
-
-
Method Details
-
nativeEvents
public java.util.EnumSet<jakarta.json.stream.JsonParser.Event> nativeEvents()Description copied from interface:JsonpDeserializer
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
.- Specified by:
nativeEvents
in interfaceJsonpDeserializer<Union>
-
acceptedEvents
public java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents()Description copied from interface:JsonpDeserializer
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)
.- Specified by:
acceptedEvents
in interfaceJsonpDeserializer<Union>
-
deserialize
Description copied from interface:JsonpDeserializer
Deserialize a value. The value starts at the next state in the JSON stream.Default implementation delegates to
JsonpDeserializer.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.- Specified by:
deserialize
in interfaceJsonpDeserializer<Union>
- Parameters:
parser
- the JSON parsermapper
- the JSON-P mapper- Returns:
- the parsed value or null
-
deserialize
public Union deserialize(jakarta.json.stream.JsonParser parser, JsonpMapper mapper, jakarta.json.stream.JsonParser.Event event)Description copied from interface:JsonpDeserializer
Deserialize a value. The value starts at the current state in the JSON stream.- Specified by:
deserialize
in interfaceJsonpDeserializer<Union>
- Parameters:
parser
- the JSON parsermapper
- the JSON-P mapperevent
- the current state ofparser
, which must be part ofJsonpDeserializer.acceptedEvents()
- Returns:
- the parsed value
-