Class ExternallyTaggedUnion.Deserializer<Union extends TaggedUnion<?,​Member>,​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

      All Methods Instance Methods Concrete Methods 
      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 Detail

      • Deserializer

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

      • deserialize

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