- All Implemented Interfaces:
- java.lang.Cloneable, Freezable
- Direct Known Subclasses:
- HTTP404V1, HTTP500V1, ModelBuildersMetadataV1
public abstract class Schema<H extends Handler<H,S>,S extends Schema<H,S>>
extends Iced
Base Schema Class
All Schemas inherit from here. Schemas have a State section (broken into
Input fields and Output fields) and an Adapter section to fill the State to
and from URLs and JSON. The base Adapter logic is here, and will by
default copy same-named fields to and from Schemas to concrete Iced objects.
Schema Fields must have a single API annotation describing in they are an
input field or not (all fields will be output by default), and any extra
requirements on the input (prior field dependencies and other validation
checks). Transient & Static fields are ignored.