Interface SchemaObject

All Superinterfaces:
Prototype.Api, SchemaItem
All Known Implementing Classes:
SchemaObject.BuilderBase.SchemaObjectImpl

public interface SchemaObject extends Prototype.Api, SchemaItem
Json schema related to the objects.
See Also:
  • Method Details

    • builder

      static SchemaObject.Builder builder()
      Create a new fluent API builder to customize configuration.
      Returns:
      a new builder
    • builder

      static SchemaObject.Builder builder(SchemaObject instance)
      Create a new fluent API builder from an existing instance.
      Parameters:
      instance - an existing instance used as a base for the builder
      Returns:
      a builder based on an instance
    • create

      static SchemaObject create()
      Create a new instance with default values.
      Returns:
      a new instance
    • maxProperties

      Optional<Integer> maxProperties()
      Maximum number of the object properties.
      Returns:
      maximum number of the properties
    • minProperties

      Optional<Integer> minProperties()
      Minimum number of the object properties.
      Returns:
      minimum number of the properties
    • additionalProperties

      Optional<Boolean> additionalProperties()
      Whether any additional properties are allowed. If set to true, all the available properties have to be added via corresponding property methods.
      Returns:
      whether are additional properties allowed
    • properties

      Map<String,SchemaItem> properties()
      Map of all registered properties.
      Returns:
      all registered properties
    • stringProperties

      Map<String,SchemaString> stringProperties()
      Map of all string properties.
      Returns:
      all string properties
    • objectProperties

      Map<String,SchemaObject> objectProperties()
      Map of all object properties.
      Returns:
      all object properties
    • arrayProperties

      Map<String,SchemaArray> arrayProperties()
      Map of all array properties.
      Returns:
      all array properties
    • numberProperties

      Map<String,SchemaNumber> numberProperties()
      Map of all number properties.
      Returns:
      all number properties
    • integerProperties

      Map<String,SchemaInteger> integerProperties()
      Map of all integer properties.
      Returns:
      all integer properties
    • booleanProperties

      Map<String,SchemaBoolean> booleanProperties()
      Map of all boolean properties.
      Returns:
      all boolean properties
    • nullProperties

      Map<String,SchemaNull> nullProperties()
      Map of all null properties.
      Returns:
      all null properties
    • schemaType

      SchemaType schemaType()
    • generate

      default void generate(Hson.Struct.Builder builder)