Class SchemaInfo
The Schema Object allows the definition of input and output data types, including objects, primitives, and arrays. This object is an extended subset of the JSON Schema Specification Draft 4, with additional extensions provided by the OpenAPI Specification to allow for more complete documentation.
OpenAPI Specification:
The Schema Object supports all properties from JSON Schema Draft 4, including but not limited to:
type (string) - The data type. Values:"string" ,"number" ,"integer" ,"boolean" ,"array" ,"object" format (string) - The format modifier (e.g.,"int32" ,"int64" ,"float" ,"double" ,"date" ,"date-time" )title (string) - A short title for the schemadescription (string) - A description of the schema (CommonMark syntax may be used)default (any) - The default valuemultipleOf (number) - Must be a multiple of this valuemaximum (number) - Maximum value (inclusive by default)exclusiveMaximum (boolean) - If true, maximum is exclusiveminimum (number) - Minimum value (inclusive by default)exclusiveMinimum (boolean) - If true, minimum is exclusivemaxLength (integer) - Maximum string lengthminLength (integer) - Minimum string lengthpattern (string) - Regular expression pattern the string must matchmaxItems (integer) - Maximum array lengthminItems (integer) - Minimum array lengthuniqueItems (boolean) - If true, array items must be uniquemaxProperties (integer) - Maximum number of object propertiesminProperties (integer) - Minimum number of object propertiesrequired (array of string) - Required property namesenum (array) - Possible values for this schemaproperties (map ofSchemaInfo
) - Object property definitionsitems (Items
) - Schema for array itemsallOf (array ofSchemaInfo
) - Must validate against all schemasoneOf (array ofSchemaInfo
) - Must validate against exactly one schemaanyOf (array ofSchemaInfo
) - Must validate against any schemanot (SchemaInfo
) - Must not validate against this schemanullable (boolean) - Allows the value to be null (OpenAPI 3.0 extension)discriminator (Discriminator
) - Discriminator for polymorphism (OpenAPI extension)readOnly (boolean) - Relevant only for Schema properties (OpenAPI extension)writeOnly (boolean) - Relevant only for Schema properties (OpenAPI extension)xml (Xml
) - XML representation details (OpenAPI extension)externalDocs (ExternalDocumentation
) - Additional external documentation (OpenAPI extension)example (any) - Example value (OpenAPI extension)deprecated (boolean) - Specifies that the schema is deprecated (OpenAPI extension)
Example:
See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdds one or more values to theallOf property.Adds one or more values to theallOf property.Adds one or more values to theenum property.Adds one or more values to theallOf property.addRequired
(String... values) Same asaddRequired(String...)
.copy()
Make a deep copy of this object.<T> T
Generic property getter.Bean property getter:additionalProperties .getAllOf()
Bean property getter:allOf .getAnyOf()
Bean property getter:allOf .Bean property getter:default .Bean property getter:deprecated .Bean property getter:description .Bean property getter:discriminator .getEnum()
Bean property getter:enum .Bean property getter:example .Bean property getter:exclusiveMaximum .Bean property getter:exclusiveMinimum .Bean property getter:externalDocs .Bean property getter:format .getItems()
Bean property getter:items .Bean property getter:maximum .Bean property getter:maxItems .Bean property getter:maxLength .Bean property getter:maxProperties .Bean property getter:minimum .Bean property getter:minItems .Bean property getter:minLength .Bean property getter:minProperties .Bean property getter:multipleOf .getNot()
Bean property getter:not .Bean property getter:uniqueItems .getOneOf()
Bean property getter:allOf .Bean property getter:pattern .Bean property getter:properties .Bean property getter:readOnly .getRef()
Bean property getter:$ref .Bean property getter:required .getTitle()
Bean property getter:title .getType()
Bean property getter:type .Bean property getter:uniqueItems .Bean property getter:WriteOnly .getXml()
Bean property getter:xml .keySet()
Returns all the keys on this element.resolveRefs
(OpenApi openApi, Deque<String> refStack, int maxDepth) Resolves any"$ref" attributes in this element.Generic property setter.Bean property setter:additionalProperties .setAllOf
(Collection<Object> value) Bean property setter:allOf .setAnyOf
(Collection<Object> value) Bean property setter:allOf .setDefault
(Object value) Bean property setter:default .setDeprecated
(Boolean value) Bean property setter:deprecated .setDescription
(String value) Bean property setter:description .setDiscriminator
(Discriminator value) Bean property setter:discriminator .setEnum
(Collection<Object> value) Bean property setter:enum .setExample
(Object value) Bean property setter:example .setExclusiveMaximum
(Boolean value) Bean property setter:exclusiveMaximum .setExclusiveMinimum
(Boolean value) Bean property setter:exclusiveMinimum .Bean property setter:externalDocs .Bean property setter:format .Bean property setter:items .setMaximum
(Number value) Bean property setter:maximum .setMaxItems
(Integer value) Bean property setter:maxItems .setMaxLength
(Integer value) Bean property setter:maxLength .setMaxProperties
(Integer value) Bean property setter:maxProperties .setMinimum
(Number value) Bean property setter:minimum .setMinItems
(Integer value) Bean property setter:minItems .setMinLength
(Integer value) Bean property setter:minLength .setMinProperties
(Integer value) Bean property setter:minProperties .setMultipleOf
(Number value) Bean property setter:multipleOf .setNot
(SchemaInfo value) Bean property setter:not .setNullable
(Boolean value) Bean property setter:nullable .setOneOf
(Collection<Object> value) Bean property setter:allOf .setPattern
(String value) Bean property setter:pattern .setProperties
(Map<String, SchemaInfo> value) Bean property setter:properties .setReadOnly
(Boolean value) Bean property setter:readOnly .Bean property setter:$ref .setRequired
(Collection<String> value) Bean property setter:required .Bean property setter:title .Bean property setter:type .setUniqueItems
(Boolean value) Bean property setter:uniqueItems .setWriteOnly
(Boolean value) Bean property setter:WriteOnly .Bean property setter:xml .strict()
Sets strict mode on this bean.Sets strict mode on this bean.
-
Constructor Details
-
SchemaInfo
public SchemaInfo()Default constructor. -
SchemaInfo
Copy constructor.- Parameters:
copyFrom
- The object to copy.
-
-
Method Details
-
copy
Make a deep copy of this object.- Returns:
- A deep copy of this object.
-
getFormat
Bean property getter:format .- Returns:
- The property value, or
null if it is not set.
-
setFormat
Bean property setter:format .- Parameters:
value
- The new value for this property.
Can benull to unset the property.
Formats defined by the OAS include:"int32" "int64" "float" "double" "byte" "binary" "date" "date-time" "password"
- Returns:
- This object
-
getTitle
Bean property getter:title .- Returns:
- The property value, or
null if it is not set.
-
setTitle
Bean property setter:title .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getDescription
Bean property getter:description .- Returns:
- The property value, or
null if it is not set.
-
setDescription
Bean property setter:description .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getDefault
Bean property getter:default .Unlike JSON Schema, the value MUST conform to the defined type for the Schema Object.
- Returns:
- The property value, or
null if it is not set.
-
setDefault
Bean property setter:default .Unlike JSON Schema, the value MUST conform to the defined type for the Schema Object.
- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMultipleOf
Bean property getter:multipleOf .- Returns:
- The property value, or
null if it is not set.
-
setMultipleOf
Bean property setter:multipleOf .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMaximum
Bean property getter:maximum .- Returns:
- The property value, or
null if it is not set.
-
setMaximum
Bean property setter:maximum .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getExclusiveMaximum
Bean property getter:exclusiveMaximum .- Returns:
- The property value, or
null if it is not set.
-
setExclusiveMaximum
Bean property setter:exclusiveMaximum .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMinimum
Bean property getter:minimum .- Returns:
- The property value, or
null if it is not set.
-
setMinimum
Bean property setter:minimum .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getExclusiveMinimum
Bean property getter:exclusiveMinimum .- Returns:
- The property value, or
null if it is not set.
-
setExclusiveMinimum
Bean property setter:exclusiveMinimum .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMaxLength
Bean property getter:maxLength .- Returns:
- The property value, or
null if it is not set.
-
setMaxLength
Bean property setter:maxLength .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMinLength
Bean property getter:minLength .- Returns:
- The property value, or
null if it is not set.
-
setMinLength
Bean property setter:minLength .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getPattern
Bean property getter:pattern .- Returns:
- The property value, or
null if it is not set.
-
setPattern
Bean property setter:pattern .This string SHOULD be a valid regular expression.
- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMaxItems
Bean property getter:maxItems .- Returns:
- The property value, or
null if it is not set.
-
setMaxItems
Bean property setter:maxItems .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMinItems
Bean property getter:minItems .- Returns:
- The property value, or
null if it is not set.
-
setMinItems
Bean property setter:minItems .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getUniqueItems
Bean property getter:uniqueItems .- Returns:
- The property value, or
null if it is not set.
-
setUniqueItems
Bean property setter:uniqueItems .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getNullable
Bean property getter:uniqueItems .- Returns:
- The property value, or
null if it is not set.
-
setNullable
Bean property setter:nullable .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMaxProperties
Bean property getter:maxProperties .- Returns:
- The property value, or
null if it is not set.
-
setMaxProperties
Bean property setter:maxProperties .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getMinProperties
Bean property getter:minProperties .- Returns:
- The property value, or
null if it is not set.
-
setMinProperties
Bean property setter:minProperties .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getRequired
Bean property getter:required .The list of required properties.
- Returns:
- The property value, or
null if it is not set.
-
setRequired
Bean property setter:required .The list of required properties.
- Parameters:
value
- The new value for this property.
Valid values:"http" "https" "ws" "wss"
Can benull to unset the property.- Returns:
- This object
-
addRequired
Same asaddRequired(String...)
.- Parameters:
values
- The new value for this property.
Valid types:Collection<String>
String
- JSON array representation ofCollection<String>
Example:
schemes(
"['scheme1','scheme2']" );String
- Individual valuesExample:
schemes(
"scheme1 ,"scheme2" );
- Returns:
- This object
-
getEnum
Bean property getter:enum .- Returns:
- The property value, or
null if it is not set.
-
setEnum
Bean property setter:enum .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
addEnum
Adds one or more values to theenum property.- Parameters:
values
- The values to add to this property.
Valid types:Object
Collection<Object>
String
- JSON array representation ofCollection<Object>
Example:
_enum(
"['foo','bar']" );String
- Individual valuesExample:
_enum(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
getType
Bean property getter:type .- Returns:
- The property value, or
null if it is not set.
-
setType
Bean property setter:type .- Parameters:
value
- The new value for this property.
Can benull to unset the property.
Possible values include:"object" "string" "number" "integer" "boolean" "array" "file"
- Returns:
- This object
-
getItems
Bean property getter:items .- Returns:
- The property value, or
null if it is not set.
-
setItems
Bean property setter:items .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getAllOf
Bean property getter:allOf .- Returns:
- The property value, or
null if it is not set.
-
setAllOf
Bean property setter:allOf .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
addAllOf
Adds one or more values to theallOf property.- Parameters:
values
- The values to add to this property.
Valid types:Object
Collection<Object>
String
- JSON array representation ofCollection<Object>
Example:
allOf(
"['foo','bar']" );String
- Individual valuesExample:
allOf(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
getAnyOf
Bean property getter:allOf .- Returns:
- The property value, or
null if it is not set.
-
setAnyOf
Bean property setter:allOf .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
addAnyOf
Adds one or more values to theallOf property.- Parameters:
values
- The values to add to this property.
Valid types:Object
Collection<Object>
String
- JSON array representation ofCollection<Object>
Example:
allOf(
"['foo','bar']" );String
- Individual valuesExample:
allOf(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
getOneOf
Bean property getter:allOf .- Returns:
- The property value, or
null if it is not set.
-
setOneOf
Bean property setter:allOf .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
addOneOf
Adds one or more values to theallOf property.- Parameters:
values
- The values to add to this property.
Valid types:Object
Collection<Object>
String
- JSON array representation ofCollection<Object>
Example:
allOf(
"['foo','bar']" );String
- Individual valuesExample:
allOf(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
getProperties
Bean property getter:properties .- Returns:
- The property value, or
null if it is not set.
-
setProperties
Bean property setter:properties .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getAdditionalProperties
Bean property getter:additionalProperties .- Returns:
- The property value, or
null if it is not set.
-
setAdditionalProperties
Bean property setter:additionalProperties .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getNot
Bean property getter:not .- Returns:
- The property value, or
null if it is not set.
-
setNot
Bean property setter:not .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getDiscriminator
Bean property getter:discriminator .- Returns:
- The property value, or
null if it is not set.
-
setDiscriminator
Bean property setter:discriminator .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getReadOnly
Bean property getter:readOnly .- Returns:
- The property value, or
null if it is not set.
-
setReadOnly
Bean property setter:readOnly .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getWriteOnly
Bean property getter:WriteOnly .- Returns:
- The property value, or
null if it is not set.
-
setWriteOnly
Bean property setter:WriteOnly .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getDeprecated
Bean property getter:deprecated .- Returns:
- The property value, or
null if it is not set.
-
setDeprecated
Bean property setter:deprecated .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getXml
Bean property getter:xml .- Returns:
- The property value, or
null if it is not set.
-
setXml
Bean property setter:xml .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getExternalDocs
Bean property getter:externalDocs .- Returns:
- The property value, or
null if it is not set.
-
setExternalDocs
Bean property setter:externalDocs .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getExample
Bean property getter:example .- Returns:
- The property value, or
null if it is not set.
-
setExample
Bean property setter:example .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
getRef
Bean property getter:$ref .- Returns:
- The property value, or
null if it is not set.
-
setRef
Bean property setter:$ref .- Parameters:
value
- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
get
Description copied from class:OpenApiElement
Generic property getter.Can be used to retrieve non-standard Swagger fields such as
"$ref" .- Overrides:
get
in classOpenApiElement
- Type Parameters:
T
- The datatype to cast the value to.- Parameters:
property
- The property name to retrieve.type
- The datatype to cast the value to.- Returns:
- The property value, or
null if the property does not exist or is not set.
-
set
Description copied from class:OpenApiElement
Generic property setter.Can be used to set non-standard Swagger fields such as
"$ref" .- Overrides:
set
in classOpenApiElement
- Parameters:
property
- The property name to set. Must not benull .value
- The new value for the property.- Returns:
- This object
-
keySet
Description copied from class:OpenApiElement
Returns all the keys on this element.- Overrides:
keySet
in classOpenApiElement
- Returns:
- All the keys on this element.
Nevernull .
-
resolveRefs
Resolves any"$ref" attributes in this element.- Parameters:
openApi
- The swagger document containing the definitions.refStack
- Keeps track of previously-visited references so that we don't cause recursive loops.maxDepth
- The maximum depth to resolve references.
After that level is reached,$ref
references will be left alone.
Useful if you have very complex models and you don't want your swagger page to be overly-complex.- Returns:
- This object with references resolved.
May or may not be the same object.
-
strict
Description copied from class:OpenApiElement
Sets strict mode on this bean.- Overrides:
strict
in classOpenApiElement
- Returns:
- This object
-
strict
Description copied from class:OpenApiElement
Sets strict mode on this bean.- Overrides:
strict
in classOpenApiElement
- Parameters:
value
- The new value for this property.
Non-boolean values will be converted to boolean usingBoolean.
.valueOf (value.toString())
Can benull (interpreted asfalse ).- Returns:
- This object
-