Class ObjectSchema
java.lang.Object
com.fasterxml.jackson.module.jsonSchema.jakarta.JsonSchema
com.fasterxml.jackson.module.jsonSchema.jakarta.types.SimpleTypeSchema
com.fasterxml.jackson.module.jsonSchema.jakarta.types.ContainerTypeSchema
com.fasterxml.jackson.module.jsonSchema.jakarta.types.ObjectSchema
This type represents a
JsonSchema
as an object type-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
static class
static class
static class
static class
JsonSchema Dependency If the dependency value is a jsonSchema, then the instance object MUST be valid against the jsonSchema.static class
Simple Dependency If the dependency value is a string, then the instance object MUST have a property with the same name as the dependency value. -
Field Summary
FieldsModifier and TypeFieldDescriptionThis attribute defines a jsonSchema for all properties that are not explicitly defined in an object type definition.This attribute is an object that defines the requirements of a property on an instance object.private Map
<String, JsonSchema> This attribute is an object that defines the jsonSchema for a set of property names of an object instance.private Map
<String, JsonSchema> This attribute is an object with property definitions that define the valid values of instance object property values.Fields inherited from class com.fasterxml.jackson.module.jsonSchema.jakarta.types.ContainerTypeSchema
enums, oneOf
Fields inherited from class com.fasterxml.jackson.module.jsonSchema.jakarta.types.SimpleTypeSchema
defaultdefault, links, pathStart, title
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
_equals
(ObjectSchema that) boolean
addSchemaDependency
(String depender, JsonSchema parentMustMatch) boolean
addSimpleDependency
(String depender, String dependsOn) Attempt to return this JsonSchema as anObjectSchema
boolean
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatTypes
getType()
boolean
determine if this JsonSchema is anObjectSchema
.void
putOptionalProperty
(com.fasterxml.jackson.databind.BeanProperty property, JsonSchema jsonSchema) void
putOptionalProperty
(String name, JsonSchema jsonSchema) putPatternProperty
(String regex, JsonSchema value) putProperty
(com.fasterxml.jackson.databind.BeanProperty property, JsonSchema value) putProperty
(String name, JsonSchema value) void
void
setAdditionalProperties
(ObjectSchema.AdditionalProperties additionalProperties) void
setDependencies
(Map<String, Object> dependencies) void
setPatternProperties
(Map<String, JsonSchema> patternProperties) void
setProperties
(Map<String, JsonSchema> properties) Methods inherited from class com.fasterxml.jackson.module.jsonSchema.jakarta.types.ContainerTypeSchema
_equals, asContainerSchema, asContainerTypeSchema, getEnums, getOneOf, isContainerTypeSchema, setEnums, setOneOf
Methods inherited from class com.fasterxml.jackson.module.jsonSchema.jakarta.types.SimpleTypeSchema
_equals, asSimpleTypeSchema, getDefault, getLinks, getPathStart, getTitle, isSimpleTypeSchema, setDefault, setLinks, setPathStart, setTitle
Methods inherited from class com.fasterxml.jackson.module.jsonSchema.jakarta.JsonSchema
_equals, arraysEqual, asAnySchema, asArraySchema, asBooleanSchema, asIntegerSchema, asNullSchema, asNumberSchema, asStringSchema, asUnionTypeSchema, asValueSchemaSchema, asValueTypeSchema, enrichWithBeanProperty, equals, get$ref, get$schema, getDescription, getDisallow, getExtends, getId, getReadonly, getRequired, isAnySchema, isArraySchema, isBooleanSchema, isIntegerSchema, isNullSchema, isNumberSchema, isStringSchema, isUnionTypeSchema, isValueTypeSchema, minimalForFormat, set$ref, set$schema, setDescription, setDisallow, setExtends, setId, setReadonly, setRequired
-
Field Details
-
additionalProperties
This attribute defines a jsonSchema for all properties that are not explicitly defined in an object type definition. If specified, the value MUST be a jsonSchema or a boolean. If false is provided, no additional properties are allowed beyond the properties defined in the jsonSchema. The default value is an empty jsonSchema which allows any value for additional properties. -
dependencies
This attribute is an object that defines the requirements of a property on an instance object. If an object instance has a property with the same name as a property in this attribute's object, then the instance must be valid against the attribute's property value -
patternProperties
This attribute is an object that defines the jsonSchema for a set of property names of an object instance. The name of each property of this attribute's object is a regular expression pattern in the ECMA 262/Perl 5 format, while the value is a jsonSchema. If the pattern matches the name of a property on the instance object, the value of the instance's property MUST be valid against the pattern name's jsonSchema value. -
properties
This attribute is an object with property definitions that define the valid values of instance object property values. When the instance value is an object, the property values of the instance object MUST conform to the property definitions in this object. In this object, each property definition's value MUST be a jsonSchema, and the property's name MUST be the name of the instance property that it defines. The instance property value MUST be valid according to the jsonSchema from the property definition. Properties are considered unordered, the order of the instance properties MAY be in any order.
-
-
Constructor Details
-
ObjectSchema
public ObjectSchema()
-
-
Method Details
-
addSchemaDependency
-
addSimpleDependency
-
getType
public com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatTypes getType()- Specified by:
getType
in classJsonSchema
-
isObjectSchema
public boolean isObjectSchema()Description copied from class:JsonSchema
determine if this JsonSchema is anObjectSchema
.- Overrides:
isObjectSchema
in classJsonSchema
- Returns:
- true if this JsonSchema is an ObjectSchema, false otherwise
-
asObjectSchema
Description copied from class:JsonSchema
Attempt to return this JsonSchema as anObjectSchema
- Overrides:
asObjectSchema
in classJsonSchema
- Returns:
- this as an ObjectSchema if possible, or null otherwise
-
getAdditionalProperties
-
getDependencies
-
getPatternProperties
-
getProperties
-
putOptionalProperty
public void putOptionalProperty(com.fasterxml.jackson.databind.BeanProperty property, JsonSchema jsonSchema) -
putOptionalProperty
-
putPatternProperty
-
putProperty
public JsonSchema putProperty(com.fasterxml.jackson.databind.BeanProperty property, JsonSchema value) -
putProperty
-
rejectAdditionalProperties
public void rejectAdditionalProperties() -
setAdditionalProperties
-
setDependencies
-
setPatternProperties
-
setProperties
-
equals
- Overrides:
equals
in classContainerTypeSchema
-
_equals
-