Interface JsonpDeserializer<V>

    • Method Detail

      • nativeEvents

        java.util.EnumSet<jakarta.json.stream.JsonParser.Event> nativeEvents()
        The native JSON events this deserializer accepts as a starting point. For example, native events for a boolean are JsonParser.Event.VALUE_TRUE and JsonParser.Event.VALUE_FALSE.
      • acceptedEvents

        java.util.EnumSet<jakarta.json.stream.JsonParser.Event> acceptedEvents()
        The JSON events this deserializer accepts as a starting point. For example, events for a boolean are JsonParser.Event.VALUE_TRUE, JsonParser.Event.VALUE_FALSE and JsonParser.Event.VALUE_STRING, the latter being converted to a boolean using Boolean.parseBoolean(String).
      • accepts

        default boolean accepts​(jakarta.json.stream.JsonParser.Event event)
        Convenience method for acceptedEvents().contains(event)
      • deserialize

        default V deserialize​(jakarta.json.stream.JsonParser parser,
                              JsonpMapper mapper)
        Deserialize a value. The value starts at the next state in the JSON stream.

        Default implementation delegates to 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 unless JsonParser.Event.VALUE_NULL is part of the deserializer's accepted events.

        Parameters:
        parser - the JSON parser
        mapper - the JSON-P mapper
        Returns:
        the parsed value or null
      • deserialize

        V deserialize​(jakarta.json.stream.JsonParser parser,
                      JsonpMapper mapper,
                      jakarta.json.stream.JsonParser.Event event)
        Deserialize a value. The value starts at the current state in the JSON stream.
        Parameters:
        parser - the JSON parser
        mapper - the JSON-P mapper
        event - the current state of parser, which must be part of acceptedEvents()
        Returns:
        the parsed value
      • of

        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)
      • of

        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)
      • stringDeserializer

        static JsonpDeserializer<java.lang.String> stringDeserializer()
      • integerDeserializer

        static JsonpDeserializer<java.lang.Integer> integerDeserializer()
      • booleanDeserializer

        static JsonpDeserializer<java.lang.Boolean> booleanDeserializer()
      • doubleDeserializer

        static JsonpDeserializer<java.lang.Double> doubleDeserializer()
      • doubleOrNullDeserializer

        static JsonpDeserializer<java.lang.Double> doubleOrNullDeserializer​(double defaultValue)
        A double deserializer that will return a default value when the JSON value is null
      • intOrNullDeserializer

        static JsonpDeserializer<java.lang.Integer> intOrNullDeserializer​(int defaultValue)
        An integer deserializer that will return a default value when the JSON value is null
      • stringOrNullDeserializer

        static JsonpDeserializer<java.lang.String> stringOrNullDeserializer()
      • numberDeserializer

        static JsonpDeserializer<java.lang.Number> numberDeserializer()
      • jsonValueDeserializer

        static JsonpDeserializer<jakarta.json.JsonValue> jsonValueDeserializer()