Class ExternallyTaggedUnion.Deserializer<Union extends TaggedUnion<?,​Member>,​Member>

java.lang.Object
co.elastic.clients.json.ExternallyTaggedUnion.Deserializer<Union,​Member>
Enclosing interface:
ExternallyTaggedUnion

public static class ExternallyTaggedUnion.Deserializer<Union extends TaggedUnion<?,​Member>,​Member>
extends java.lang.Object
A deserializer for externally-tagged unions. Since the union variant discriminant is provided externally, this cannot be a regular JsonpDeserializer as the caller has to provide the discriminant value.
  • Constructor Summary

    Constructors
    Constructor Description
    Deserializer​(java.util.Map<java.lang.String,​JsonpDeserializer<? extends Member>> deserializers, java.util.function.BiFunction<java.lang.String,​Member,​Union> unionCtor)  
  • Method Summary

    Modifier and Type Method Description
    Union deserialize​(java.lang.String type, jakarta.json.stream.JsonParser parser, JsonpMapper mapper)
    Deserialize a union value, given its type.
    ExternallyTaggedUnion.TypedKeysDeserializer<Union> typedKeys()
    Deserialize an externally tagged union encoded as typed keys, a JSON dictionary whose property names combine type and name in a single string.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Deserializer

      public Deserializer​(java.util.Map<java.lang.String,​JsonpDeserializer<? extends Member>> deserializers, java.util.function.BiFunction<java.lang.String,​Member,​Union> unionCtor)
  • Method Details

    • deserialize

      public Union deserialize​(java.lang.String type, jakarta.json.stream.JsonParser parser, JsonpMapper mapper)
      Deserialize a union value, given its type.
    • typedKeys

      Deserialize an externally tagged union encoded as typed keys, a JSON dictionary whose property names combine type and name in a single string.