Interface Schema

    • Method Detail

      • getDiscriminator

        Discriminator getDiscriminator()
        Returns the discriminator property from this Schema instance.
        Returns:
        the discriminator that is used to differentiate between the schemas which may satisfy the payload description
      • setDiscriminator

        void setDiscriminator​(Discriminator discriminator)
        Sets the discriminator property of this Schema instance to the given object.
        Parameters:
        discriminator - the object that is used to differentiate between the schemas which may satisfy the payload description
      • discriminator

        default Schema discriminator​(Discriminator discriminator)
        Sets the discriminator property of this Schema instance to the given object.
        Parameters:
        discriminator - the object that is used to differentiate between the schemas which may satisfy the payload description
        Returns:
        the current Schema instance
      • getTitle

        String getTitle()
        Returns the title property from this Schema instance.
        Returns:
        the title assigned to this Schema
      • setTitle

        void setTitle​(String title)
        Sets the title property of this Schema instance to the given string.
        Parameters:
        title - a title to assign to this Schema
      • title

        default Schema title​(String title)
        Sets the title property of this Schema instance to the given string.
        Parameters:
        title - a title to assign to this Schema
        Returns:
        the current Schema instance
      • getDefaultValue

        Object getDefaultValue()
        Returns the default value property from this Schema instance.
        Returns:
        the default value object
      • setDefaultValue

        void setDefaultValue​(Object defaultValue)
        Set the default value property of this Schema instance to the value given.
        Parameters:
        defaultValue - a value to use as the default
      • defaultValue

        default Schema defaultValue​(Object defaultValue)
        Set the default value property of this Schema instance to the value given.
        Parameters:
        defaultValue - a value to use as the default
        Returns:
        the current Schema instance
      • getEnumeration

        List<Object> getEnumeration()
        Returns the enumerated list of values allowed for objects defined by this Schema.
        Returns:
        a copy List (potentially immutable) of values allowed for objects defined by this Schema
      • setEnumeration

        void setEnumeration​(List<Object> enumeration)
        Sets the enumerated list of values allowed for objects defined by this Schema.
        Parameters:
        enumeration - a list of values allowed
      • addEnumeration

        Schema addEnumeration​(Object enumeration)
        Adds an item of the appropriate type to the enumerated list of values allowed.
        Parameters:
        enumeration - an object to add to the enumerated values
        Returns:
        current Schema instance
      • removeEnumeration

        void removeEnumeration​(Object enumeration)
        Removes an item of the appropriate type to the enumerated list of values allowed.
        Parameters:
        enumeration - an object to add to the enumerated values
      • getMultipleOf

        BigDecimal getMultipleOf()
        Returns the multipleOf property from this Schema instance.

        minimum: 0

        Returns:
        the positive number that restricts the value of the object
      • setMultipleOf

        void setMultipleOf​(BigDecimal multipleOf)
        Sets the multipleOf property of this Schema instance to the value given.
        Parameters:
        multipleOf - a positive number that restricts the value of objects described by this Schema
      • multipleOf

        default Schema multipleOf​(BigDecimal multipleOf)
        Sets the multipleOf property of this Schema instance to the value given.
        Parameters:
        multipleOf - a positive number that restricts the value of objects described by this Schema
        Returns:
        the current Schema instance
      • getMaximum

        BigDecimal getMaximum()
        Returns the maximum property from this Schema instance.
        Returns:
        the value that a numeric object must be less than or equal to
      • setMaximum

        void setMaximum​(BigDecimal maximum)
        Sets the maximum property of this Schema instance to the value given.
        Parameters:
        maximum - the value that a numeric object must be less than or equal to
      • maximum

        default Schema maximum​(BigDecimal maximum)
        Sets the maximum property of this Schema instance to the value given.
        Parameters:
        maximum - the value that a numeric object must be less than or equal to
        Returns:
        the current Schema instance
      • getExclusiveMaximum

        BigDecimal getExclusiveMaximum()
        Returns the exclusiveMaximum property from this Schema instance.
        Returns:
        the value that a numeric object must be less than
        Since:
        4.0
      • setExclusiveMaximum

        void setExclusiveMaximum​(BigDecimal exclusiveMaximum)
        Sets the exclusiveMaximum property of this Schema instance to the value given.
        Parameters:
        exclusiveMaximum - the value that a numeric object must be less than
        Since:
        4.0
      • exclusiveMaximum

        default Schema exclusiveMaximum​(BigDecimal exclusiveMaximum)
        Sets the exclusiveMaximum property of this Schema instance to the value given.
        Parameters:
        exclusiveMaximum - the value that a numeric object must be less than
        Returns:
        the current Schema instance
        Since:
        4.0
      • getMinimum

        BigDecimal getMinimum()
        Returns the minimum property from this Schema instance.
        Returns:
        the value that a numeric object must be greater than or equal to
      • setMinimum

        void setMinimum​(BigDecimal minimum)
        Sets the minimum property of this Schema instance to the value given.
        Parameters:
        minimum - the value that a numeric object must be greater than or equal to
      • minimum

        default Schema minimum​(BigDecimal minimum)
        Sets the minimum property of this Schema instance to the value given.
        Parameters:
        minimum - the value that a numeric object must be greater than or equal to
        Returns:
        the current Schema instance
      • getExclusiveMinimum

        BigDecimal getExclusiveMinimum()
        Returns the exclusiveMinimum property from this Schema instance.
        Returns:
        the value that a numeric object must be greater than
        Since:
        4.0
      • setExclusiveMinimum

        void setExclusiveMinimum​(BigDecimal exclusiveMinimum)
        Sets the exclusiveMinimum property of this Schema instance to the value given.
        Parameters:
        exclusiveMinimum - the value that a numeric object must be greater than
        Since:
        4.0
      • exclusiveMinimum

        default Schema exclusiveMinimum​(BigDecimal exclusiveMinimum)
        Sets the exclusiveMinimum property of this Schema instance to the value given.
        Parameters:
        exclusiveMinimum - the value that a numeric object must be greater than
        Returns:
        the current Schema instance
        Since:
        4.0
      • getMaxLength

        Integer getMaxLength()
        Returns the maxLength property from this Schema instance.

        minimum: 0

        Returns:
        the maximum length of objects e.g. strings
      • setMaxLength

        void setMaxLength​(Integer maxLength)
        Sets the maxLength property of this Schema instance to the value given.
        Parameters:
        maxLength - the maximum length of objects defined by this Schema
      • maxLength

        default Schema maxLength​(Integer maxLength)
        Sets the maxLength property of this Schema instance to the value given.
        Parameters:
        maxLength - the maximum length of objects defined by this Schema
        Returns:
        the current Schema instance
      • getMinLength

        Integer getMinLength()
        Returns the minLength property from this Schema instance.

        minimum: 0

        Returns:
        the minimum length of objects e.g. strings
      • setMinLength

        void setMinLength​(Integer minLength)
        Sets the minLength property of this Schema instance to the value given.
        Parameters:
        minLength - the minimum length of objects defined by this Schema
      • minLength

        default Schema minLength​(Integer minLength)
        Sets the minLength property of this Schema instance to the value given.
        Parameters:
        minLength - the minimum length of objects defined by this Schema
        Returns:
        the current Schema instance
      • getPattern

        String getPattern()
        Returns the pattern property from this Schema instance.
        Returns:
        the regular expression which restricts the value of an object e.g. a string
      • setPattern

        void setPattern​(String pattern)
        Sets the pattern property of this Schema instance to the string given.
        Parameters:
        pattern - the regular expression which restricts objects defined by this Schema
      • pattern

        default Schema pattern​(String pattern)
        Sets the pattern property of this Schema instance to the string given.
        Parameters:
        pattern - the regular expression which restricts objects defined by this Schema
        Returns:
        the current Schema instance
      • getMaxItems

        Integer getMaxItems()
        Returns the maxItems property from this Schema instance.

        minimum: 0

        Returns:
        the maximum number of elements in the object e.g. array elements
      • setMaxItems

        void setMaxItems​(Integer maxItems)
        Sets the maxItems property of this Schema instance to the value given.
        Parameters:
        maxItems - the maximum number of elements in objects defined by this Schema e.g. array elements
      • maxItems

        default Schema maxItems​(Integer maxItems)
        Sets the maxItems property of this Schema instance to the value given.
        Parameters:
        maxItems - the maximum number of elements in objects defined by this Schema e.g. array elements
        Returns:
        the current Schema instance
      • getMinItems

        Integer getMinItems()
        Returns the minItems property from this Schema instance.

        minimum: 0

        Returns:
        the minimum number of elements in the object e.g. array elements
      • setMinItems

        void setMinItems​(Integer minItems)
        Sets the minItems property of this Schema instance to the value given.
        Parameters:
        minItems - the minimum number of elements in objects defined by this Schema e.g. array elements
      • minItems

        default Schema minItems​(Integer minItems)
        Sets the minItems property of this Schema instance to the value given.
        Parameters:
        minItems - the minimum number of elements in objects defined by this Schema e.g. array elements
        Returns:
        the current Schema instance
      • getUniqueItems

        Boolean getUniqueItems()
        Returns the uniqueItems property from this Schema instance.
        Returns:
        whether to ensure items are unique
      • setUniqueItems

        void setUniqueItems​(Boolean uniqueItems)
        Sets the uniqueItems property of this Schema instance to the value given.
        Parameters:
        uniqueItems - ensure the items (e.g. array elements) are unique in objects defined by this Schema
      • uniqueItems

        default Schema uniqueItems​(Boolean uniqueItems)
        Sets the uniqueItems property of this Schema instance to the value given.
        Parameters:
        uniqueItems - ensure the items (e.g. array elements) are unique in objects defined by this Schema
        Returns:
        the current Schema instance
      • getMaxProperties

        Integer getMaxProperties()
        Returns the maxProperties property from this Schema instance.

        minimum: 0

        Returns:
        the maximum number of properties allowed in the object
      • setMaxProperties

        void setMaxProperties​(Integer maxProperties)
        Sets the maxProperties property of this Schema instance to the value given.
        Parameters:
        maxProperties - limit the number of properties in objects defined by this Schema
      • maxProperties

        default Schema maxProperties​(Integer maxProperties)
        Sets the maxProperties property of this Schema instance to the value given.
        Parameters:
        maxProperties - limit the number of properties in objects defined by this Schema
        Returns:
        the current Schema instance
      • getMinProperties

        Integer getMinProperties()
        Returns the minProperties property from this Schema instance.

        minimum: 0

        Returns:
        the minimum number of properties allowed in the object
      • setMinProperties

        void setMinProperties​(Integer minProperties)
        Sets the minProperties property of this Schema instance to the value given.
        Parameters:
        minProperties - limit the number of properties in objects defined by this Schema
      • minProperties

        default Schema minProperties​(Integer minProperties)
        Sets the minProperties property of this Schema instance to the value given.
        Parameters:
        minProperties - limit the number of properties in objects defined by this Schema
        Returns:
        the current Schema instance
      • getRequired

        List<String> getRequired()
        Returns the required property from this Schema instance.
        Returns:
        a copy List (potentially immutable) of fields required in objects defined by this Schema
      • setRequired

        void setRequired​(List<String> required)
        Sets the list of fields required in objects defined by this Schema.
        Parameters:
        required - the list of fields required in objects defined by this Schema
      • required

        default Schema required​(List<String> required)
        Sets the list of fields required in objects defined by this Schema.
        Parameters:
        required - the list of fields required in objects defined by this Schema
        Returns:
        the current Schema instance
      • addRequired

        Schema addRequired​(String required)
        Adds the name of an item to the list of fields required in objects defined by this Schema.
        Parameters:
        required - the name of an item required in objects defined by this Schema instance
        Returns:
        the current Schema instance
      • removeRequired

        void removeRequired​(String required)
        Removes the name of an item to the list of fields required in objects defined by this Schema.
        Parameters:
        required - the name of an item required in objects defined by this Schema instance
      • getType

        List<Schema.SchemaType> getType()
        Returns the type property of this Schema instance. Defines the types which are valid.
        Returns:
        a copy List (potentially immutable) of the allowed types
      • setType

        void setType​(List<Schema.SchemaType> types)
        Sets the type property of this Schema instance. Defines the types which are valid.
        Parameters:
        types - a list of the allowed types
      • type

        default Schema type​(List<Schema.SchemaType> types)
        Sets the type property of this Schema instance. Defines the types which are valid.
        Parameters:
        types - a list of the allowed types
        Returns:
        current Schema instance
        Since:
        "4.0"
      • addType

        Schema addType​(Schema.SchemaType type)
        Adds a type to the type list.
        Parameters:
        type - the type to add to the type list
        Returns:
        current Schema instance
        Since:
        "4.0"
      • removeType

        void removeType​(Schema.SchemaType type)
        Removes a type from the type list.
        Parameters:
        type - the type to remove from the type list
        Since:
        "4.0"
      • getNot

        Schema getNot()
        Returns a Schema which describes properties not allowed in objects defined by the current schema.
        Returns:
        the not property's schema
      • setNot

        void setNot​(Schema not)
        Sets the not property to a Schema which describes properties not allowed in objects defined by the current schema.
        Parameters:
        not - the Schema which describes properties not allowed
      • not

        default Schema not​(Schema not)
        Sets the not property to a Schema which describes properties not allowed in objects defined by the current schema.
        Parameters:
        not - the Schema which describes properties not allowed
        Returns:
        the current Schema instance
      • getProperties

        Map<String,​Schema> getProperties()
        Returns the properties defined in this Schema.
        Returns:
        a copy Map (potentially immutable) which associates property names with the schemas that describe their contents
      • setProperties

        void setProperties​(Map<String,​Schema> properties)
        Sets the properties of this Schema instance to the map provided.
        Parameters:
        properties - a map which associates property names with the schemas that describe their contents
      • properties

        default Schema properties​(Map<String,​Schema> properties)
        Sets the properties of this Schema instance to the map provided.
        Parameters:
        properties - a map which associates property names with the schemas that describe their contents
        Returns:
        the current Schema instance
      • addProperty

        Schema addProperty​(String key,
                           Schema propertySchema)
        Adds a Schema property of the provided name using the given schema.
        Parameters:
        key - the name of a new Schema property
        propertySchema - the Schema which describes the properties of the named property. null values will be rejected (implementation will throw an exception) or ignored.
        Returns:
        the current Schema instance
      • removeProperty

        void removeProperty​(String key)
        Removes a Schema property of the provided name using the given schema.
        Parameters:
        key - the name of a new Schema property
      • getAdditionalPropertiesSchema

        Schema getAdditionalPropertiesSchema()
        Returns the value of the "additionalProperties" setting, which indicates whether properties not otherwise defined are allowed. This setting MUST either be a Boolean or Schema, they can not be set both at the same time.

        This method returns a Schema, for the Boolean getter use getAdditionalPropertiesBoolean()

        • If "additionalProperties" is a Schema, then additional properties are allowed but should conform to the Schema.
        Returns:
        this Schema's additionalProperties property (as Schema)
      • getAdditionalPropertiesBoolean

        @Deprecated(since="4.0")
        Boolean getAdditionalPropertiesBoolean()
        Deprecated.
        use getAdditionalPropertiesSchema() which may return a boolean-valued schema
        Returns the value of the "additionalProperties" setting, which indicates whether properties not otherwise defined are allowed. This setting MUST either be a Boolean or Schema, they can not be set both at the same time.

        This method returns a Boolean, for the Schema getter use getAdditionalPropertiesSchema()

        • If "additionalProperties" is true, then any additional properties are allowed.
        • If "additionalProperties" is false, then only properties covered by the "properties" and "patternProperties" are allowed.
        Returns:
        this Schema's additionalProperties property (as Boolean)
      • setAdditionalPropertiesSchema

        void setAdditionalPropertiesSchema​(Schema additionalProperties)
        Sets the Schema which defines additional properties not defined by "properties" or "patternProperties". See the javadoc for getAdditionalPropertiesSchema() for more details on this setting. Note that this version of the setter is mutually exclusive with the Boolean variants (see setAdditionalPropertiesBoolean(Boolean)).
        Parameters:
        additionalProperties - a Schema which defines additional properties
      • additionalPropertiesSchema

        default Schema additionalPropertiesSchema​(Schema additionalProperties)
        Sets the Schema which defines additional properties not defined by "properties" or "patternProperties". See the javadoc for getAdditionalPropertiesSchema() for more details on this setting. Note that this version of the setter is mutually exclusive with the Boolean variants (see additionalPropertiesBoolean(Boolean)).
        Parameters:
        additionalProperties - a Schema which defines additional properties
        Returns:
        the current Schema instance
      • getDescription

        String getDescription()
        Returns a description of the purpose of this Schema.
        Returns:
        a string containing a description
      • setDescription

        void setDescription​(String description)
        Sets the description property of this Schema to the given string.
        Parameters:
        description - a string containing a description of the purpose of this Schema
      • description

        default Schema description​(String description)
        Sets the description property of this Schema to the given string.
        Parameters:
        description - a string containing a description of the purpose of this Schema
        Returns:
        the current Schema instance
      • getFormat

        String getFormat()
        Returns the format property from this Schema instance. This property clarifies the data type specified in the type property.
        Returns:
        a string describing the format of the data in this Schema
      • setFormat

        void setFormat​(String format)
        Sets the format property of this Schema instance to the given string. The value may be one of the formats described in the OAS or a user defined format.
        Parameters:
        format - the string specifying the data format
      • format

        default Schema format​(String format)
        Sets the format property of this Schema instance to the given string. The value may be one of the formats described in the OAS or a user defined format.
        Parameters:
        format - the string specifying the data format
        Returns:
        the current Schema instance
      • getReadOnly

        Boolean getReadOnly()
        Returns the readOnly property from this Schema instance.
        Returns:
        indication that the Schema is only valid in a response message
      • setReadOnly

        void setReadOnly​(Boolean readOnly)
        Sets the readOnly property of this Schema.
        Parameters:
        readOnly - true indicates the Schema should not be sent as part of a request message
      • readOnly

        default Schema readOnly​(Boolean readOnly)
        Sets the readOnly property of this Schema.
        Parameters:
        readOnly - true indicates the Schema should not be sent as part of a request message
        Returns:
        the current Schema instance
      • getWriteOnly

        Boolean getWriteOnly()
        Returns the writeOnly property from this Schema instance.
        Returns:
        indication that the Schema is only valid in a request message
      • setWriteOnly

        void setWriteOnly​(Boolean writeOnly)
        Sets the writeOnly property of this Schema.
        Parameters:
        writeOnly - true indicates the Schema should not be sent as part of a response message
      • writeOnly

        default Schema writeOnly​(Boolean writeOnly)
        Sets the writeOnly property of this Schema.
        Parameters:
        writeOnly - true indicates the Schema should not be sent as part of a response message
        Returns:
        the current Schema instance
      • getExample

        @Deprecated(since="4.0")
        Object getExample()
        Deprecated.
        Returns the example property from this Schema instance.
        Returns:
        an object which is an example of an instance of this Schema
      • setExample

        @Deprecated(since="4.0")
        void setExample​(Object example)
        Deprecated.
        Sets the example property of this Schema instance. To represent examples that cannot be naturally represented in JSON or YAML, a string value can be used to contain the example with escaping where necessary.
        Parameters:
        example - an object which is an instance of this Schema
      • example

        @Deprecated(since="4.0")
        default Schema example​(Object example)
        Deprecated.
        Sets the example property of this Schema instance. To represent examples that cannot be naturally represented in JSON or YAML, a string value can be used to contain the example with escaping where necessary.
        Parameters:
        example - an object which is an instance of this Schema
        Returns:
        the current Schema instance
      • getExternalDocs

        ExternalDocumentation getExternalDocs()
        Returns the externalDocs property from this Schema instance.
        Returns:
        additional external documentation for this Schema
      • setExternalDocs

        void setExternalDocs​(ExternalDocumentation externalDocs)
        Sets the externalDocs property of this Schema to the indicated value.
        Parameters:
        externalDocs - an additional external documentation object
      • externalDocs

        default Schema externalDocs​(ExternalDocumentation externalDocs)
        Sets the externalDocs property of this Schema to the indicated value.
        Parameters:
        externalDocs - an additional external documentation object
        Returns:
        the current Schema instance
      • getDeprecated

        Boolean getDeprecated()
        Returns the deprecated property from this Schema instance.
        Returns:
        indication that the Schema is deprecated and should be transitioned out of usage
      • setDeprecated

        void setDeprecated​(Boolean deprecated)
        Sets the deprecated property of this Schema. This specifies that the Schema is deprecated and should be transitioned out of usage
        Parameters:
        deprecated - true to indicate this Schema is deprecated
      • deprecated

        default Schema deprecated​(Boolean deprecated)
        Sets the deprecated property of this Schema. This specifies that the Schema is deprecated and should be transitioned out of usage
        Parameters:
        deprecated - true to indicate this Schema is deprecated
        Returns:
        the current Schema instance
      • getXml

        XML getXml()
        Returns the xml property from this Schema instance.
        Returns:
        a metadata object that allows for more fine-tuned XML model definitions
      • setXml

        void setXml​(XML xml)
        Sets the xml property of this Schema instance. It may only be set on properties schemas and adds additional metadata to describe the XML representation of this property.
        Parameters:
        xml - a metadata object to describe the XML representation of this property
      • xml

        default Schema xml​(XML xml)
        Sets the xml property of this Schema instance. It may only be set on properties schemas and adds additional metadata to describe the XML representation of this property.
        Parameters:
        xml - a metadata object to describe the XML representation of this property
        Returns:
        the current Schema instance
      • getItems

        Schema getItems()
        Returns the Schema used for all the elements of an array typed Schema.
        Returns:
        the Schema used for all the elements
      • setItems

        void setItems​(Schema items)
        Set the Schema used for all the elements of an array typed Schema.
        Parameters:
        items - the Schema used by this array
      • items

        default Schema items​(Schema items)
        Set the Schema used for all the elements of an array typed Schema.
        Parameters:
        items - the Schema used by this array
        Returns:
        the current Schema instance
      • getAllOf

        List<Schema> getAllOf()
        Returns the schemas used by the allOf property.
        Returns:
        a copy List (potentially immutable) of schemas used by the allOf property
      • setAllOf

        void setAllOf​(List<Schema> allOf)
        Sets the schemas used by the allOf property of this Schema.
        Parameters:
        allOf - the list of schemas used by the allOf property
      • allOf

        default Schema allOf​(List<Schema> allOf)
        Sets the schemas used by the allOf property of this Schema.
        Parameters:
        allOf - the list of schemas used by the allOf property
        Returns:
        the current Schema instance
      • addAllOf

        Schema addAllOf​(Schema allOf)
        Adds the given Schema to the list of schemas used by the allOf property.
        Parameters:
        allOf - a Schema to use with the allOf property
        Returns:
        the current Schema instance
      • removeAllOf

        void removeAllOf​(Schema allOf)
        Removes the given Schema to the list of schemas used by the allOf property.
        Parameters:
        allOf - a Schema to use with the allOf property
      • getAnyOf

        List<Schema> getAnyOf()
        Returns the schemas used by the anyOf property.
        Returns:
        a copy List (potentially immutable) of schemas used by the anyOf property
      • setAnyOf

        void setAnyOf​(List<Schema> anyOf)
        Sets the schemas used by the anyOf property of this Schema.
        Parameters:
        anyOf - the list of schemas used by the anyOf property
      • anyOf

        default Schema anyOf​(List<Schema> anyOf)
        Sets the schemas used by the anyOf property of this Schema.
        Parameters:
        anyOf - the list of schemas used by the anyOf property
        Returns:
        the current Schema instance
      • addAnyOf

        Schema addAnyOf​(Schema anyOf)
        Adds the given Schema to the list of schemas used by the anyOf property.
        Parameters:
        anyOf - a Schema to use with the anyOf property
        Returns:
        the current Schema instance
      • removeAnyOf

        void removeAnyOf​(Schema anyOf)
        Removes the given Schema to the list of schemas used by the anyOf property.
        Parameters:
        anyOf - a Schema to use with the anyOf property
      • getOneOf

        List<Schema> getOneOf()
        Returns the schemas used by the oneOf property.
        Returns:
        a copy List (potentially immutable) of schemas used by the oneOf property
      • setOneOf

        void setOneOf​(List<Schema> oneOf)
        Sets the schemas used by the oneOf property of this Schema.
        Parameters:
        oneOf - the list of schemas used by the oneOf property
      • oneOf

        default Schema oneOf​(List<Schema> oneOf)
        Sets the schemas used by the oneOf property of this Schema.
        Parameters:
        oneOf - the list of schemas used by the oneOf property
        Returns:
        the current Schema instance
      • addOneOf

        Schema addOneOf​(Schema oneOf)
        Adds the given Schema to the list of schemas used by the oneOf property.
        Parameters:
        oneOf - a Schema to use with the oneOf property
        Returns:
        the current Schema instance
      • removeOneOf

        void removeOneOf​(Schema oneOf)
        Removes the given Schema to the list of schemas used by the oneOf property.
        Parameters:
        oneOf - a Schema to use with the oneOf property
      • getSchemaDialect

        String getSchemaDialect()
        Returns the schema dialect in use. This is the value of the $schema property.
        Returns:
        the schema dialect name, or null for the default
        Since:
        4.0
      • setSchemaDialect

        void setSchemaDialect​(String schemaDialect)
        Sets the schema dialect in use. This is the value of the $schema property.
        Parameters:
        schemaDialect - the schema dialect name, or null for the default
        Since:
        4.0
      • schemaDialect

        default Schema schemaDialect​(String schemaDialect)
        Sets the schema dialect in use. This is the value of the $schema property.
        Parameters:
        schemaDialect - the schema dialect name, or null for the default
        Returns:
        the current Schema instance
        Since:
        4.0
      • getComment

        String getComment()
        Returns the comment to be included in the $comment property of the schema.
        Returns:
        the comment, or null if no comment is set
        Since:
        4.0
      • setComment

        void setComment​(String comment)
        Sets the comment to be included in the $comment property of the schema.
        Parameters:
        comment - the comment, or null to remove any comment
        Since:
        4.0
      • comment

        default Schema comment​(String comment)
        Sets the comment to be included in the $comment property of the schema.
        Parameters:
        comment - the comment, or null to remove any comment
        Returns:
        the current Schema instance
        Since:
        4.0
      • getIfSchema

        Schema getIfSchema()
        Returns the "if" schema. If an object is valid against the "if" schema, then it must also be valid against the "then" schema, otherwise it must be valid against the "else" schema.
        Returns:
        the if schema
        Since:
        4.0
      • setIfSchema

        void setIfSchema​(Schema ifSchema)
        Sets the "if" schema. If an object is valid against the "if" schema, then it must also be valid against the "then" schema, otherwise it must be valid against the "else" schema.
        Parameters:
        ifSchema - the if schema
        Since:
        4.0
      • ifSchema

        default Schema ifSchema​(Schema ifSchema)
        Sets the "if" schema. If an object is valid against the "if" schema, then it must also be valid against the "then" schema, otherwise it must be valid against the "else" schema.
        Parameters:
        ifSchema - the if schema
        Returns:
        the current Schema instance
        Since:
        4.0
      • getThenSchema

        Schema getThenSchema()
        Returns the "then" schema. If an object is valid against the "if" schema, then it must also be valid against the "then" schema.
        Returns:
        the then schema
        Since:
        4.0
      • setThenSchema

        void setThenSchema​(Schema thenSchema)
        Sets the "then" schema. If an object is valid against the "if" schema, then it must also be valid against the "then" schema.
        Parameters:
        thenSchema - the then schema
        Since:
        4.0
      • thenSchema

        default Schema thenSchema​(Schema thenSchema)
        Sets the "then" schema. If an object is valid against the "if" schema, then it must also be valid against the "then" schema.
        Parameters:
        thenSchema - the then schema
        Returns:
        the current Schema instance
        Since:
        4.0
      • getElseSchema

        Schema getElseSchema()
        Returns the "else" schema. If an object is not valid against the "if" schema, then it must be valid against the "else" schema.
        Returns:
        the else schema
        Since:
        4.0
      • setElseSchema

        void setElseSchema​(Schema elseSchema)
        Sets the "else" schema. If an object is not valid against the "if" schema, then it must be valid against the "else" schema.
        Parameters:
        elseSchema - the else schema
        Since:
        4.0
      • elseSchema

        default Schema elseSchema​(Schema elseSchema)
        Sets the "else" schema. If an object is not valid against the "if" schema, then it must be valid against the "else" schema.
        Parameters:
        elseSchema - the else schema
        Returns:
        the current Schema instance
        Since:
        4.0
      • getDependentSchemas

        Map<String,​Schema> getDependentSchemas()
        Returns the dependentSchemas property of this Schema instance.

        For each name and property pair in the map, if the object contains a property with the given name, it must match the corresponding schema.

        Returns:
        a copy Map (potentially immutable) of properties and their dependent schemas
        Since:
        4.0
      • setDependentSchemas

        void setDependentSchemas​(Map<String,​Schema> dependentSchemas)
        Sets the dependentSchemas property of this Schema instance.

        For each name and property pair in the map, if the object contains a property with the given name, it must match the corresponding schema.

        Parameters:
        dependentSchemas - a map of properties and their dependent schemas
        Since:
        4.0
      • dependentSchemas

        default Schema dependentSchemas​(Map<String,​Schema> dependentSchemas)
        Sets the dependentSchemas property of this Schema instance.

        For each name and property pair in the map, if the object contains a property with the given name, it must match the corresponding schema.

        Parameters:
        dependentSchemas - a map of properties and their dependent schemas
        Returns:
        the current Schema instance
        Since:
        4.0
      • addDependentSchema

        Schema addDependentSchema​(String propertyName,
                                  Schema schema)
        Sets the dependent schema for a property name.

        If the object contains a property with the given name, it must match the dependent schema.

        Parameters:
        propertyName - the property name
        schema - the dependent schema
        Returns:
        the current Schema instance
        Since:
        4.0
      • removeDependentSchema

        void removeDependentSchema​(String propertyName)
        Removes the dependent schema for a property name.
        Parameters:
        propertyName - the property name
        Since:
        4.0
      • getPrefixItems

        List<Schema> getPrefixItems()
        Returns the prefixItems property of this Schema instance.

        If the object is an array, the nth item in the array must match the nth schema in this list.

        Returns:
        a copy List (potentially immutable) of prefix item schemas
        Since:
        4.0
      • setPrefixItems

        void setPrefixItems​(List<Schema> prefixItems)
        Sets the prefixItems property of this Schema instance.

        If the object is an array, the nth item in the array must match the nth schema in this list.

        Parameters:
        prefixItems - a list of prefix item schemas
        Since:
        4.0
      • prefixItems

        default Schema prefixItems​(List<Schema> prefixItems)
        Sets the prefixItems property of this Schema instance.

        If the object is an array, the nth item in the array must match the nth schema in this list.

        Parameters:
        prefixItems - a list of prefix item schemas
        Returns:
        current Schema instance
        Since:
        4.0
      • addPrefixItem

        Schema addPrefixItem​(Schema prefixItem)
        Adds a schema to the end of the prefixItems list.
        Parameters:
        prefixItem - the schema to add to the prefixItems list
        Returns:
        current Schema instance
        Since:
        4.0
      • removePrefixItem

        void removePrefixItem​(Schema prefixItem)
        Removes a schema from the prefixItems list.
        Parameters:
        prefixItem - the schema to remove from the prefixItems list
        Since:
        4.0
      • getContains

        Schema getContains()
        Returns the contains property of this Schema instance.

        If the object is an array, at least one item in the array must match the returned schema.

        Returns:
        a schema that one item in the array should match
        Since:
        4.0
      • setContains

        void setContains​(Schema contains)
        Sets the contains property of this Schema instance.

        If the object is an array, at least one item in the array must match the returned schema.

        Parameters:
        contains - a schema that one item in the array should match
        Since:
        4.0
      • contains

        default Schema contains​(Schema contains)
        Sets the contains property of this Schema instance.

        If the object is an array, at least one item in the array must match the returned schema.

        Parameters:
        contains - a schema that one item in the array should match
        Returns:
        the current Schema instance
        Since:
        4.0
      • getPatternProperties

        Map<String,​Schema> getPatternProperties()
        Returns the patternProperties property from this Schema instance.

        The value of patternProperties is a map from a regular expression to a schema. For each string and schema pair in the map, if a property name is matched by the regular expression then the value of that property must validate against the schema.

        Returns:
        a copy Map (potentially immutable) of regular expression and schema pairs
        Since:
        4.0
      • setPatternProperties

        void setPatternProperties​(Map<String,​Schema> patternProperties)
        Sets the patternProperties property from this Schema instance.

        The value of patternProperties is a map from a regular expression to a schema. For each string and schema pair in the map, if a property name is matched by the regular expression then the value of that property must validate against the schema.

        Parameters:
        patternProperties - a map of regular expression and schema pairs
        Since:
        4.0
      • patternProperties

        default Schema patternProperties​(Map<String,​Schema> patternProperties)
        Sets the patternProperties property from this Schema instance.

        The value of patternProperties is a map from a regular expression to a schema. For each string and schema pair in the map, if a property name is matched by the regular expression then the value of that property must validate against the schema.

        Parameters:
        patternProperties - a map of regular expression and schema pairs
        Returns:
        the current Schema instance
        Since:
        4.0
      • addPatternProperty

        Schema addPatternProperty​(String regularExpression,
                                  Schema schema)
        Adds a regular expression and schema pair to the list of pattern properties.

        The value of patternProperties is a map from a regular expression to a schema. For each string and schema pair in the map, if a property name is matched by the regular expression then the value of that property must validate against the schema.

        Parameters:
        regularExpression - the regular expression to add
        schema - the schema that a property value must validate against if its name matches regularExpression
        Returns:
        the current Schema instance
        Since:
        4.0
      • removePatternProperty

        void removePatternProperty​(String regularExpression)
        Removes a regular expression and its corresponding schema pair from the list of pattern properties.
        Parameters:
        regularExpression - the regular expression to remove
        Since:
        4.0
      • getPropertyNames

        Schema getPropertyNames()
        Returns the propertyNames property from this Schema instance. Each property name in the object must validate against this schema.
        Returns:
        the schema which each property name must validate against
        Since:
        4.0
      • setPropertyNames

        void setPropertyNames​(Schema propertyNameSchema)
        Sets the propertyNames property from this Schema instance. Each property name in the object must validate against this schema.
        Parameters:
        propertyNameSchema - the schema which each property name must validate against
        Since:
        4.0
      • propertyNames

        default Schema propertyNames​(Schema propertyNameSchema)
        Sets the propertyNames property from this Schema instance. Each property name in the object must validate against this schema.
        Parameters:
        propertyNameSchema - the schema which each property name must validate against
        Returns:
        the current Schema instance
        Since:
        4.0
      • getUnevaluatedItems

        Schema getUnevaluatedItems()
        Returns the unevaluatedItems property of this Schema instance.

        Items which have not successfully validated against prefixItems, items, or contains must validate against this schema.

        Returns:
        a schema that unevaluated array items must validate against
        Since:
        4.0
      • setUnevaluatedItems

        void setUnevaluatedItems​(Schema unevaluatedItems)
        Sets the unevaluatedItems property of this Schema instance.

        Items which have not successfully validated against prefixItems, items, or contains must validate against this schema.

        Parameters:
        unevaluatedItems - a schema that unevaluated array items must validate against
        Since:
        4.0
      • unevaluatedItems

        default Schema unevaluatedItems​(Schema unevaluatedItems)
        Sets the unevaluatedItems property of this Schema instance.

        Items which have not successfully validated against prefixItems, items, or contains must validate against this schema.

        Parameters:
        unevaluatedItems - a schema that unevaluated array items must validate against
        Returns:
        the current Schema instance
        Since:
        4.0
      • getUnevaluatedProperties

        Schema getUnevaluatedProperties()
        Returns the unevaluatedProperties property of this Schema instance.

        Property values which have not successfully validated against properties, patternProperties, or additionalProperties must validate against this schema.

        Returns:
        a schema that unevaluated object properties must validate against
        Since:
        4.0
      • setUnevaluatedProperties

        void setUnevaluatedProperties​(Schema unevaluatedProperties)
        Sets the unevaluatedProperties property of this Schema instance.

        Property values which have not successfully validated against properties, patternProperties, or additionalProperties must validate against this schema.

        Parameters:
        unevaluatedProperties - a schema that unevaluated object properties must validate against
        Since:
        4.0
      • unevaluatedProperties

        default Schema unevaluatedProperties​(Schema unevaluatedProperties)
        Sets the unevaluatedProperties property of this Schema instance.

        Property values which have not successfully validated against properties, patternProperties, or additionalProperties must validate against this schema.

        Parameters:
        unevaluatedProperties - a schema that unevaluated object properties must validate against
        Returns:
        the current Schema instance
        Since:
        4.0
      • getConstValue

        Object getConstValue()
        Returns the const property from this Schema instance. Indicates that the object must have a specific value.
        Returns:
        the value that the object must have
        Since:
        4.0
      • setConstValue

        void setConstValue​(Object constValue)
        Sets the const property from this Schema instance. Indicates that the object must have a specific value.
        Parameters:
        constValue - the value that the object must have
        Since:
        4.0
      • constValue

        default Schema constValue​(Object constValue)
        Sets the const property from this Schema instance. Indicates that the object must have a specific value.
        Parameters:
        constValue - the value that the object must have
        Returns:
        the current Schema instance
        Since:
        4.0
      • getMaxContains

        Integer getMaxContains()
        Returns the maxContains property from this Schema instance. Specifies that contains must match no more than this many items in the array.
        Returns:
        the max number of items which may be matched by contains
        Since:
        4.0
      • setMaxContains

        void setMaxContains​(Integer maxContains)
        Sets the maxContains property from this Schema instance. Specifies that contains must match no more than this many items in the array.
        Parameters:
        maxContains - the max number of items which may be matched by contains
        Since:
        4.0
      • maxContains

        default Schema maxContains​(Integer maxContains)
        Sets the maxContains property from this Schema instance. Specifies that contains must match no more than this many items in the array.
        Parameters:
        maxContains - the maximum number of items which may be matched by contains
        Returns:
        the current Schema instance
        Since:
        4.0
      • getMinContains

        Integer getMinContains()
        Returns the minContains property from this Schema instance. Specifies that contains must match at least this many items in the array.
        Returns:
        the minimum number of items which may be matched by contains
        Since:
        4.0
      • setMinContains

        void setMinContains​(Integer minContains)
        Sets the minContains property from this Schema instance. Specifies that contains must match at least this many items in the array.
        Parameters:
        minContains - the minimum number of items which may be matched by contains
        Since:
        4.0
      • minContains

        default Schema minContains​(Integer minContains)
        Sets the minContains property from this Schema instance. Specifies that contains must match at least this many items in the array.
        Parameters:
        minContains - the minimum number of items which may be matched by contains
        Returns:
        the current Schema instance
        Since:
        4.0
      • getDependentRequired

        Map<String,​List<String>> getDependentRequired()
        Returns the dependentRequired property of this Schema instance.

        For each entry in the map, if the key exists as a property name in the object, then the list of names in the value must also exist as property names in the object.

        Returns:
        a copy Map (potentially immutable) of property names to lists of additional required property names
        Since:
        4.0
      • setDependentRequired

        void setDependentRequired​(Map<String,​List<String>> dependentRequired)
        Sets the dependentRequired property of this Schema instance.

        For each entry in the map, if the key exists as a property name in the object, then the list of names in the value must also exist as property names in the object.

        Parameters:
        dependentRequired - a map of property names to lists of additional required property names
        Since:
        4.0
      • dependentRequired

        default Schema dependentRequired​(Map<String,​List<String>> dependentRequired)
        Sets the dependentRequired property of this Schema instance.

        For each entry in the map, if the key exists as a property name in the object, then the list of names in the value must also exist as property names in the object.

        Parameters:
        dependentRequired - a map of property names to lists of additional required property names
        Returns:
        the current Schema instance
        Since:
        4.0
      • addDependentRequired

        Schema addDependentRequired​(String propertyName,
                                    List<String> additionalRequiredPropertyNames)
        Sets the list of additional property names that are required if a property named propertyName exists.
        Parameters:
        propertyName - the property name
        additionalRequiredPropertyNames - the names of additional properties which are required if propertyName exists to add
        Returns:
        the current Schema instance
        Since:
        4.0
      • removeDependentRequired

        void removeDependentRequired​(String propertyName)
        Removes the list of additional property names that are required if a property named propertyName exists.
        Parameters:
        propertyName - the property name
        Since:
        4.0
      • getContentEncoding

        String getContentEncoding()
        Returns the contentEncoding property from this Schema instance.

        Specifies the encoding used to represent binary data as a string (e.g. base64).

        Returns:
        the encoding type
        Since:
        4.0
      • setContentEncoding

        void setContentEncoding​(String contentEncoding)
        Sets the contentEncoding property from this Schema instance.

        Specifies the encoding used to represent binary data as a string (e.g. base64).

        Parameters:
        contentEncoding - the encoding type
        Since:
        4.0
      • contentEncoding

        default Schema contentEncoding​(String contentEncoding)
        Sets the contentEncoding property from this Schema instance.

        Specifies the encoding used to represent binary data as a string (e.g. base64).

        Parameters:
        contentEncoding - the encoding type
        Returns:
        the current Schema instance
        Since:
        4.0
      • getContentMediaType

        String getContentMediaType()
        Returns the contentMediaType property from this Schema instance.

        Specifies the media type of the content of a string.

        Returns:
        the media type
        Since:
        4.0
      • setContentMediaType

        void setContentMediaType​(String contentMediaType)
        Sets the contentMediaType property from this Schema instance.

        Specifies the media type of the content of a string.

        Parameters:
        contentMediaType - the media type
        Since:
        4.0
      • contentMediaType

        default Schema contentMediaType​(String contentMediaType)
        Sets the contentMediaType property from this Schema instance.

        Specifies the media type of the content of a string.

        Parameters:
        contentMediaType - the media type
        Returns:
        the current Schema instance
        Since:
        4.0
      • getContentSchema

        Schema getContentSchema()
        Returns the contentSchema property from this Schema instance.

        If contentMediaType is a media type that maps into JSON Schema's data model, this property specifies a schema that the data in the string must conform to.

        Returns:
        the schema for the data within the string
        Since:
        4.0
      • setContentSchema

        void setContentSchema​(Schema contentSchema)
        Sets the contentSchema property from this Schema instance.

        If contentMediaType is a media type that maps into JSON Schema's data model, this property specifies a schema that the data in the string must conform to.

        Parameters:
        contentSchema - the schema for the data within the string
        Since:
        4.0
      • contentSchema

        default Schema contentSchema​(Schema contentSchema)
        Sets the contentSchema property from this Schema instance.

        If contentMediaType is a media type that maps into JSON Schema's data model, this property specifies a schema that the data in the string must conform to.

        Parameters:
        contentSchema - the schema for the data within the string
        Returns:
        the current Schema instance
        Since:
        4.0
      • getBooleanSchema

        Boolean getBooleanSchema()
        Returns whether this Schema is a boolean schema.

        If this property is not null, then all other properties are ignored and the schema will be represented by a boolean true or false value.

        Returns:
        the boolean value of this schema, or null if it is not a boolean schema
        Since:
        4.0
      • setBooleanSchema

        void setBooleanSchema​(Boolean booleanSchema)
        Sets this schema to a boolean value.

        If this property is not null, then all other properties are ignored and the schema will be represented by a boolean true or false value.

        Parameters:
        booleanSchema - the boolean value of this schema, or null if it is not a boolean schema
        Since:
        4.0
      • booleanSchema

        default Schema booleanSchema​(Boolean booleanSchema)
        Sets this schema to a boolean value.

        If this property is not null, then all other properties are ignored and the schema will be represented by a boolean true or false value.

        Parameters:
        booleanSchema - the boolean value of this schema, or null if it is not a boolean schema
        Returns:
        the current Schema instance
        Since:
        4.0
      • getExamples

        List<Object> getExamples()
        Returns the examples property of this Schema instance.
        Returns:
        a copy List (potentially immutable) of example objects which this schema could describe
        Since:
        4.0
      • setExamples

        void setExamples​(List<Object> examples)
        Sets the examples property of this Schema instance.
        Parameters:
        examples - a list of example objects which this schema could describe
        Since:
        4.0
      • examples

        default Schema examples​(List<Object> examples)
        Sets the examples property of this Schema instance.
        Parameters:
        examples - a list of example objects which this schema could describe
        Returns:
        current Schema instance
        Since:
        4.0
      • addExample

        Schema addExample​(Object example)
        Adds an example to the examples list.
        Parameters:
        example - the example to add to the examples list
        Returns:
        current Schema instance
        Since:
        4.0
      • removeExample

        void removeExample​(Object example)
        Removes an example from the examples list.
        Parameters:
        example - the example to remove from the examples list
        Since:
        4.0
      • get

        Object get​(String propertyName)
        Gets a schema property by name.

        Allows access to arbitrary properties in a schema object, allowing use of alternative schema dialects which use different property names (or the same property names with different data types).

        When using the standard schema dialect, this method can be used to retrieve values set by other methods. E.g.

         
         schema.setMinimum(new BigDecimal(3));
         BigDecimal minimum = (BigDecimal) schema.get("minimum"); // returns 3
         
         
        Parameters:
        propertyName - the property name
        Returns:
        the value of the named property, or null if a property with the given name is not set
      • set

        Schema set​(String propertyName,
                   Object value)
        Sets a schema property.

        Allows the modifications of arbitrary schema properties in a schema properties, allowing use of alternative schema dialects which use different property names (or the same property names with different data types).

        Passing null as the value removes the property from the schema object.

        value must be one of the following types, otherwise non-portable behavior results:

        • Any primitive type
        • Any primitive wrapper class
        • null
        • String
        • BigDecimal
        • BigInteger
        • Any type which OASFactory can create
        • Any Enumeration
        • List where every value is a permitted type
        • Map where every key is a String and every value is a permitted type

        When using the standard schema dialect, values set by this method can be retrieved by other methods. E.g.

         
         schema.set("minimum", new BigDecimal(3));
         BigDecimal minimum = schema.getMinimum(); // returns 3
         
         
        Parameters:
        propertyName - the property name
        value - the value to set, or null to remove the property
        Returns:
        the current Schema instance
      • getAll

        Map<String,​?> getAll()
        Gets all properties of a schema.

        Equivalent to calling get(String) for each property set to a non-null value and putting them all into a Map.

        Returns:
        a Map of property names to their corresponding values
      • setAll

        void setAll​(Map<String,​?> allProperties)
        Sets all properties of a schema.

        Equivalent to clearing all properties and then setting each property with set(String, Object).

        Parameters:
        allProperties - the properties to set. Each value in the map must be valid according to the rules in set(String, Object)