Class Schema.Builder
java.lang.Object
software.amazon.smithy.jsonschema.Schema.Builder
- All Implemented Interfaces:
SmithyBuilder<Schema>
- Enclosing class:
- Schema
Abstract class used to build Schema components.
-
Method Summary
Modifier and TypeMethodDescriptionadditionalProperties
(Schema additionalProperties) build()
Creates an immutable object that is created from the properties that have been set on the builder.constValue
(Node constValue) contentEncoding
(String contentEncoding) contentMediaType
(String contentMediaType) defaultValue
(Node defaultValue) description
(String description) disableProperty
(String propertyName) Disables a specific JSON schema property by name.enumValues
(Collection<String> enumValues) exclusiveMaximum
(Number exclusiveMaximum) exclusiveMinimum
(Number exclusiveMinimum) extensions
(Map<String, Node> extensions) maxProperties
(Integer maxProperties) minProperties
(Integer minProperties) multipleOf
(Number multipleOf) patternProperties
(Map<String, Schema> patternProperties) properties
(Map<String, Schema> properties) propertyNames
(Schema propertyNames) putExtension
(String key, ToNode value) putPatternProperty
(String key, Schema value) putProperty
(String key, Schema value) readOnly
(boolean readOnly) removeExtension
(String key) removeProperty
(String key) required
(Collection<String> required) uniqueItems
(boolean uniqueItems) writeOnly
(boolean writeOnly)
-
Method Details
-
build
Description copied from interface:SmithyBuilder
Creates an immutable object that is created from the properties that have been set on the builder.- Specified by:
build
in interfaceSmithyBuilder<Schema>
- Returns:
- an instance of T
-
ref
-
type
-
defaultValue
-
enumValues
-
constValue
-
multipleOf
-
maximum
-
exclusiveMaximum
-
minimum
-
exclusiveMinimum
-
maxLength
-
minLength
-
pattern
-
items
-
maxItems
-
minItems
-
uniqueItems
-
maxProperties
-
minProperties
-
required
-
properties
-
putProperty
-
removeProperty
-
additionalProperties
-
propertyNames
-
patternProperties
-
putPatternProperty
-
removePatternProperty
-
allOf
-
anyOf
-
oneOf
-
not
-
title
-
description
-
getFormat
-
format
-
readOnly
-
writeOnly
-
comment
-
contentEncoding
-
contentMediaType
-
examples
-
extensions
-
putExtension
-
removeExtension
-
disableProperty
Disables a specific JSON schema property by name.- Parameters:
propertyName
- Property name to remove (e.g., "propertyNames").- Returns:
- Returns the builder.
-