Package co.elastic.clients.json
Interface ExternallyTaggedUnion
public interface ExternallyTaggedUnion
Utilities for union types whose discriminant is not directly part of the structure, either as an enclosing property name or as
an inner property. This is used for Elasticsearch aggregation results and suggesters, using the
typed_keys
parameter that
encodes a name+type in a single JSON property.-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ExternallyTaggedUnion.Deserializer<Union extends TaggedUnion<?,Member>,Member>
A deserializer for externally-tagged unions.static class
ExternallyTaggedUnion.TypedKeysDeserializer<Union extends TaggedUnion<?,?>>
-
Method Summary
Static Methods Modifier and Type Method Description static <T extends JsonpSerializable & TaggedUnion<? extends JsonEnum, ?>>
voidserializeTypedKeys(java.util.Map<java.lang.String,T> map, jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper)
Serialize an externally tagged union using the typed keys encoding.static <T extends JsonpSerializable & TaggedUnion<? extends JsonEnum, ?>>
voidserializeTypedKeysInner(java.util.Map<java.lang.String,T> map, jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper)
Serialize an externally tagged union using the typed keys encoding, without the enclosing start/end object.
-
Method Details
-
serializeTypedKeys
static <T extends JsonpSerializable & TaggedUnion<? extends JsonEnum, ?>> void serializeTypedKeys(java.util.Map<java.lang.String,T> map, jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper)Serialize an externally tagged union using the typed keys encoding. -
serializeTypedKeysInner
static <T extends JsonpSerializable & TaggedUnion<? extends JsonEnum, ?>> void serializeTypedKeysInner(java.util.Map<java.lang.String,T> map, jakarta.json.stream.JsonGenerator generator, JsonpMapper mapper)Serialize an externally tagged union using the typed keys encoding, without the enclosing start/end object.
-