Class Schema.Builder

  • All Implemented Interfaces:
    SmithyBuilder<Schema>
    Enclosing class:
    Schema

    public static final class Schema.Builder
    extends java.lang.Object
    implements SmithyBuilder<Schema>
    Abstract class used to build Schema components.
    • Method Detail

      • build

        public Schema 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 interface SmithyBuilder<Schema>
        Returns:
        an instance of T
      • trivial

        public Schema.Builder trivial​(java.lang.Boolean trivial)
      • enumValues

        public Schema.Builder enumValues​(java.util.Collection<java.lang.String> enumValues)
      • intEnumValues

        public Schema.Builder intEnumValues​(java.util.Collection<java.lang.Integer> intEnumValues)
      • multipleOf

        public Schema.Builder multipleOf​(java.lang.Number multipleOf)
      • maximum

        public Schema.Builder maximum​(java.lang.Number maximum)
      • exclusiveMaximum

        public Schema.Builder exclusiveMaximum​(java.lang.Number exclusiveMaximum)
      • minimum

        public Schema.Builder minimum​(java.lang.Number minimum)
      • exclusiveMinimum

        public Schema.Builder exclusiveMinimum​(java.lang.Number exclusiveMinimum)
      • maxLength

        public Schema.Builder maxLength​(java.lang.Long maxLength)
      • minLength

        public Schema.Builder minLength​(java.lang.Long minLength)
      • pattern

        public Schema.Builder pattern​(java.lang.String pattern)
      • maxItems

        public Schema.Builder maxItems​(java.lang.Integer maxItems)
      • minItems

        public Schema.Builder minItems​(java.lang.Integer minItems)
      • uniqueItems

        public Schema.Builder uniqueItems​(boolean uniqueItems)
      • maxProperties

        public Schema.Builder maxProperties​(java.lang.Integer maxProperties)
      • minProperties

        public Schema.Builder minProperties​(java.lang.Integer minProperties)
      • required

        public Schema.Builder required​(java.util.Collection<java.lang.String> required)
      • properties

        public Schema.Builder properties​(java.util.Map<java.lang.String,​Schema> properties)
      • removeProperty

        public Schema.Builder removeProperty​(java.lang.String key)
      • additionalProperties

        public Schema.Builder additionalProperties​(Schema additionalProperties)
      • patternProperties

        public Schema.Builder patternProperties​(java.util.Map<java.lang.String,​Schema> patternProperties)
      • putPatternProperty

        public Schema.Builder putPatternProperty​(java.lang.String key,
                                                 Schema value)
      • removePatternProperty

        public Schema.Builder removePatternProperty​(java.lang.String key)
      • description

        public Schema.Builder description​(java.lang.String description)
      • getFormat

        public java.util.Optional<java.lang.String> getFormat()
      • comment

        public Schema.Builder comment​(java.lang.String comment)
      • contentEncoding

        public Schema.Builder contentEncoding​(java.lang.String contentEncoding)
      • contentMediaType

        public Schema.Builder contentMediaType​(java.lang.String contentMediaType)
      • deprecated

        public Schema.Builder deprecated​(boolean deprecated)
      • extensions

        public Schema.Builder extensions​(java.util.Map<java.lang.String,​Node> extensions)
      • removeExtension

        public Schema.Builder removeExtension​(java.lang.String key)
      • disableProperty

        public Schema.Builder disableProperty​(java.lang.String propertyName)
        Disables a specific JSON schema property by name.
        Parameters:
        propertyName - Property name to remove (e.g., "propertyNames").
        Returns:
        Returns the builder.