Package org.forgerock.api.jackson
Class JacksonUtils
java.lang.Object
org.forgerock.api.jackson.JacksonUtils
Some utilities for dealing with Jackson schemas.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final com.fasterxml.jackson.databind.ObjectMapper
A public staticObjectMapper
instance, so that they do not have to be instantiated all over the place, as they are expensive to construct. -
Method Summary
Modifier and TypeMethodDescriptionstatic com.fasterxml.jackson.module.jsonSchema.JsonSchema
Obtain the JsonSchema for a type, using the extended schema classes that are in this package.static boolean
validateJsonToSchema
(String json, com.fasterxml.jackson.module.jsonSchema.JsonSchema schema) Validate that the provided JSON conforms to the schema.
-
Field Details
-
OBJECT_MAPPER
public static final com.fasterxml.jackson.databind.ObjectMapper OBJECT_MAPPERA public staticObjectMapper
instance, so that they do not have to be instantiated all over the place, as they are expensive to construct. Note that theSerializationFeature.WRITE_DATES_AS_TIMESTAMPS
option is disabled, so that dates will be in JSON Schema v4 format (e.g., "type":"string", "format":"date-time").
-
-
Method Details
-
validateJsonToSchema
public static boolean validateJsonToSchema(String json, com.fasterxml.jackson.module.jsonSchema.JsonSchema schema) throws javax.validation.ValidationException Validate that the provided JSON conforms to the schema.- Parameters:
json
- JSON content.schema
- The schema. Must be an instance of one of the extended schema classes in this package.- Returns:
true
if schema implementsValidatableSchema
and was validated andfalse
otherwise- Throws:
javax.validation.ValidationException
- If the JSON does not conform to the schema.
-
schemaFor
public static com.fasterxml.jackson.module.jsonSchema.JsonSchema schemaFor(Class<?> type) throws com.fasterxml.jackson.databind.JsonMappingException Obtain the JsonSchema for a type, using the extended schema classes that are in this package.- Parameters:
type
- The class to get a schema for.- Returns:
- The schema.
- Throws:
com.fasterxml.jackson.databind.JsonMappingException
- If the type cannot be mapped to a schema by Jackson.
-