Package io.vertx.rxjava3.json.schema
Class JsonSchema
- java.lang.Object
-
- io.vertx.rxjava3.json.schema.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 theoriginalnon RX-ified interface using Vert.x codegen.
-
-
Field Summary
Fields Modifier and Type Field Description static TypeArg<JsonSchema>__TYPE_ARGstatic Predicate<Map.Entry<String,Object>>EXCLUDE_ANNOTATION_ENTRIESPredicate to filter out annotation keys.static Predicate<String>EXCLUDE_ANNOTATIONSPredicate to filter out annotation keys.
-
Constructor Summary
Constructors Constructor Description JsonSchema(JsonSchema delegate)JsonSchema(Object delegate)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description JsonSchemaannotate(String key, String value)Annotates the schema.booleancontainsKey(String key)Checks if the given key is present in the schema object.booleanequals(Object o)Set<String>fieldNames()Returns the field names on the underlying object.<R> Rget(String key)Get a type casted value by key.<R> Rget(String key, R fallback)Get a type casted value by key.JsonSchemagetDelegate()inthashCode()static JsonSchemanewInstance(JsonSchema arg)static JsonSchemaof(boolean bool)Factory method to create aJsonSchemafrom aBoolean.static JsonSchemaof(JsonObject json)Factory method to create aJsonSchemafrom a .static JsonSchemaof(String id, JsonObject json)Factory method to create aJsonSchemafrom a .JsonObjectresolve()Tries to resolve all internal references.StringtoString()
-
-
-
Field Detail
-
__TYPE_ARG
public static final TypeArg<JsonSchema> __TYPE_ARG
-
EXCLUDE_ANNOTATIONS
public static final Predicate<String> EXCLUDE_ANNOTATIONS
Predicate to filter out annotation keys.
-
-
Constructor Detail
-
JsonSchema
public JsonSchema(JsonSchema delegate)
-
JsonSchema
public JsonSchema(Object delegate)
-
-
Method Detail
-
getDelegate
public JsonSchema getDelegate()
-
of
public static JsonSchema of(JsonObject json)
Factory method to create aJsonSchemafrom 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 aJsonSchemafrom 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 aJsonSchemafrom aBoolean.- 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 keyvalue- 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 keyfallback- 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:
trueif present
-
fieldNames
public Set<String> fieldNames()
Returns the field names on the underlying object.- Returns:
- field names
-
resolve
public JsonObject resolve()
Tries to resolve all internal references. External references are not resolved.The result is an object where all references have been resolved. Resolution of circular references is shallow. This should normally not be a problem for this use case.
- Returns:
- a new representing the schema with
$refs replaced by their value.
-
newInstance
public static JsonSchema newInstance(JsonSchema arg)
-
-