Class JsonSchema


  • public class JsonSchema
    extends Object
    A Json-Schema holder.

    There are 2 kinds of Json-Schema's:

    • JSON Object based
    • Boolean based

    This is a common interface to handle all kinds of schemas.

    NOTE: This class has been automatically generated from the original non RX-ified interface using Vert.x codegen.

    • Field Detail

      • __TYPE_ARG

        public static final io.vertx.lang.rx.TypeArg<JsonSchema> __TYPE_ARG
      • EXCLUDE_ANNOTATIONS

        public static final java.util.function.Predicate<String> EXCLUDE_ANNOTATIONS
        Predicate to filter out annotation keys.
      • EXCLUDE_ANNOTATION_ENTRIES

        public static final java.util.function.Predicate<Map.Entry<String,​Object>> EXCLUDE_ANNOTATION_ENTRIES
        Predicate to filter out annotation keys.
    • Constructor Detail

      • JsonSchema

        public JsonSchema​(JsonSchema delegate)
      • JsonSchema

        public JsonSchema​(Object delegate)
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • of

        public static JsonSchema of​(JsonObject json)
        Factory method to create a JsonSchema from a .
        Parameters:
        json - a JSON Object.
        Returns:
        a wrapper for the input object.
      • of

        public static JsonSchema of​(String id,
                                    JsonObject json)
        Factory method to create a JsonSchema from a .
        Parameters:
        id - will force the given id as the schema $id.
        json - a JSON Object.
        Returns:
        a wrapper for the input object.
      • of

        public static JsonSchema of​(boolean bool)
        Factory method to create a JsonSchema from a Boolean.
        Parameters:
        bool - a boolean.
        Returns:
        a wrapper for the input object.
      • annotate

        public JsonSchema annotate​(String key,
                                   String value)
        Annotates the schema. An annotation is a extra key-value added to the schema that are not relevant for validation but can be used to store pre-computed state.
        Parameters:
        key - a key
        value - a value
        Returns:
      • get

        public <R> R get​(String key)
        Get a type casted value by key.
        Parameters:
        key - a key
        Returns:
        the value or null
      • get

        public <R> R get​(String key,
                         R fallback)
        Get a type casted value by key. If the key is missing, then the fallback value is returned.
        Parameters:
        key - a key
        fallback - fallback when key is not present
        Returns:
        the value or null
      • containsKey

        public boolean containsKey​(String key)
        Checks if the given key is present in the schema object.
        Parameters:
        key - a key
        Returns:
        true if present
      • fieldNames

        public Set<String> fieldNames()
        Returns the field names on the underlying object.
        Returns:
        field names