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> TGeneric 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
-
addAllOf
Adds one or more values to theallOf property.- Parameters:
values- The values to add to this property.
Valid types:ObjectCollection<Object>String- JSON array representation ofCollection<Object>Example:
allOf(
"['foo','bar']" );String- Individual valuesExample:
allOf(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
addAnyOf
Adds one or more values to theallOf property.- Parameters:
values- The values to add to this property.
Valid types:ObjectCollection<Object>String- JSON array representation ofCollection<Object>Example:
allOf(
"['foo','bar']" );String- Individual valuesExample:
allOf(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
addEnum
Adds one or more values to theenum property.- Parameters:
values- The values to add to this property.
Valid types:ObjectCollection<Object>String- JSON array representation ofCollection<Object>Example:
enum_(
"['foo','bar']" );String- Individual valuesExample:
enum_(
"foo" ,"bar" );
Ignored ifnull .- Returns:
- This object
-
addOneOf
Adds one or more values to theallOf property.- Parameters:
values- The values to add to this property.
Valid types:ObjectCollection<Object>String- JSON array representation ofCollection<Object>Example:
allOf(
"['foo','bar']" );String- Individual valuesExample:
allOf(
"foo" ,"bar" );
Ignored ifnull .- 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
-
copy
Make a deep copy of this object.- Returns:
- A deep copy of this object.
-
get
Description copied from class:OpenApiElementGeneric property getter.Can be used to retrieve non-standard Swagger fields such as
"$ref" .- Overrides:
getin 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.
-
getAdditionalProperties
Bean property getter:additionalProperties .- Returns:
- The property value, or
null if it is not set.
-
getAllOf
Bean property getter:allOf .- Returns:
- The property value, or
null if it is not set.
-
getAnyOf
Bean property getter:allOf .- Returns:
- The property value, or
null if it is not set.
-
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.
-
getDeprecated
Bean property getter:deprecated .- Returns:
- The property value, or
null if it is not set.
-
getDescription
Bean property getter:description .- Returns:
- The property value, or
null if it is not set.
-
getDiscriminator
Bean property getter:discriminator .- Returns:
- The property value, or
null if it is not set.
-
getEnum
Bean property getter:enum .- Returns:
- The property value, or
null if it is not set.
-
getExample
Bean property getter:example .- Returns:
- The property value, or
null if it is not set.
-
getExclusiveMaximum
Bean property getter:exclusiveMaximum .- Returns:
- The property value, or
null if it is not set.
-
getExclusiveMinimum
Bean property getter:exclusiveMinimum .- Returns:
- The property value, or
null if it is not set.
-
getExternalDocs
Bean property getter:externalDocs .- Returns:
- The property value, or
null if it is not set.
-
getFormat
Bean property getter:format .- Returns:
- The property value, or
null if it is not set.
-
getItems
Bean property getter:items .- Returns:
- The property value, or
null if it is not set.
-
getMaximum
Bean property getter:maximum .- Returns:
- The property value, or
null if it is not set.
-
getMaxItems
Bean property getter:maxItems .- Returns:
- The property value, or
null if it is not set.
-
getMaxLength
Bean property getter:maxLength .- Returns:
- The property value, or
null if it is not set.
-
getMaxProperties
Bean property getter:maxProperties .- Returns:
- The property value, or
null if it is not set.
-
getMinimum
Bean property getter:minimum .- Returns:
- The property value, or
null if it is not set.
-
getMinItems
Bean property getter:minItems .- Returns:
- The property value, or
null if it is not set.
-
getMinLength
Bean property getter:minLength .- Returns:
- The property value, or
null if it is not set.
-
getMinProperties
Bean property getter:minProperties .- Returns:
- The property value, or
null if it is not set.
-
getMultipleOf
Bean property getter:multipleOf .- Returns:
- The property value, or
null if it is not set.
-
getNot
Bean property getter:not .- Returns:
- The property value, or
null if it is not set.
-
getNullable
Bean property getter:uniqueItems .- Returns:
- The property value, or
null if it is not set.
-
getOneOf
Bean property getter:allOf .- Returns:
- The property value, or
null if it is not set.
-
getPattern
Bean property getter:pattern .- Returns:
- The property value, or
null if it is not set.
-
getProperties
Bean property getter:properties .- Returns:
- The property value, or
null if it is not set.
-
getReadOnly
Bean property getter:readOnly .- Returns:
- The property value, or
null if it is not set.
-
getRef
Bean property getter:$ref .- Returns:
- The property value, or
null if it is not set.
-
getRequired
Bean property getter:required .The list of required properties.
- Returns:
- The property value, or
null if it is not set.
-
getTitle
Bean property getter:title .- Returns:
- The property value, or
null if it is not set.
-
getType
Bean property getter:type .- Returns:
- The property value, or
null if it is not set.
-
getUniqueItems
Bean property getter:uniqueItems .- Returns:
- The property value, or
null if it is not set.
-
getWriteOnly
Bean property getter:WriteOnly .- Returns:
- The property value, or
null if it is not set.
-
getXml
Bean property getter:xml .- Returns:
- The property value, or
null if it is not set.
-
keySet
Description copied from class:OpenApiElementReturns all the keys on this element.- Overrides:
keySetin 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,$refreferences 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.
-
set
Description copied from class:OpenApiElementGeneric property setter.Can be used to set non-standard Swagger fields such as
"$ref" .- Overrides:
setin classOpenApiElement- Parameters:
property- The property name to set. Must not benull .value- The new value for the property.- Returns:
- This object
-
setAdditionalProperties
Bean property setter:additionalProperties .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setAllOf
Bean property setter:allOf .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setAnyOf
Bean property setter:allOf .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
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
-
setDeprecated
Bean property setter:deprecated .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setDescription
Bean property setter:description .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setDiscriminator
Bean property setter:discriminator .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setEnum
Bean property setter:enum .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setExample
Bean property setter:example .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setExclusiveMaximum
Bean property setter:exclusiveMaximum .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setExclusiveMinimum
Bean property setter:exclusiveMinimum .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setExternalDocs
Bean property setter:externalDocs .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
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
-
setItems
Bean property setter:items .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMaximum
Bean property setter:maximum .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMaxItems
Bean property setter:maxItems .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMaxLength
Bean property setter:maxLength .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMaxProperties
Bean property setter:maxProperties .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMinimum
Bean property setter:minimum .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMinItems
Bean property setter:minItems .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMinLength
Bean property setter:minLength .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMinProperties
Bean property setter:minProperties .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setMultipleOf
Bean property setter:multipleOf .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setNot
Bean property setter:not .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setNullable
Bean property setter:nullable .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setOneOf
Bean property setter:allOf .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
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
-
setProperties
Bean property setter:properties .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setReadOnly
Bean property setter:readOnly .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setRef
Bean property setter:$ref .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
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
-
setTitle
Bean property setter:title .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
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
-
setUniqueItems
Bean property setter:uniqueItems .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setWriteOnly
Bean property setter:WriteOnly .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
setXml
Bean property setter:xml .- Parameters:
value- The new value for this property.
Can benull to unset the property.- Returns:
- This object
-
strict
Description copied from class:OpenApiElementSets strict mode on this bean.- Overrides:
strictin classOpenApiElement- Returns:
- This object
-
strict
Description copied from class:OpenApiElementSets strict mode on this bean.- Overrides:
strictin 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
-