public class SchemaMetadataV3 extends SchemaV3<SchemaMetadata,SchemaMetadataV3>
SchemaV3.Meta
Schema.AutoParseable
Modifier and Type | Field and Description |
---|---|
FieldMetadataV3[] |
fields |
java.lang.String |
label |
java.lang.String |
name
The simple schema (class) name, e.g.
|
java.lang.String |
superclass
The simple schema superclass name, e.g.
|
java.lang.String |
type |
int |
version |
Constructor and Description |
---|
SchemaMetadataV3() |
SchemaMetadataV3(SchemaMetadata impl) |
Modifier and Type | Method and Description |
---|---|
SchemaMetadata |
createImpl()
Create an appropriate implementation object and any child objects but does not fill them.
|
SchemaMetadataV3 |
fillFromImpl(SchemaMetadata impl)
Fill this Schema from the given implementation object.
|
SchemaMetadata |
fillImpl(SchemaMetadata impl)
Fill an impl object and any children from this schema and its children.
|
createAndFillImpl, extractVersionFromSchemaName, fillFromAny, fillFromBody, fillFromImpl, fillFromImpl, fillFromParms, fillFromParms, fillFromParms, fillImpl, getImplClass, getImplClass, getSchemaName, getSchemaType, getSchemaVersion, init_meta, markdown, markdown, newInstance, newInstance, setField, setSchemaType_doNotCall
asBytes, clone, copyOver, frozenType, read, readExternal, readJSON, reloadFromBytes, toJsonBytes, toJsonString, write, writeExternal
@API(help="Simple name of the Schema. NOTE: the schema_names form a single namespace.") public java.lang.String name
@API(help="[DEPRECATED] This field is always the same as name.", direction=OUTPUT) public java.lang.String label
@API(help="Simple name of the superclass of the Schema. NOTE: the schema_names form a single namespace.") public java.lang.String superclass
@API(help="Simple name of H2O type that this Schema represents. Must not be changed after creation (treat as final).") public java.lang.String type
@API(help="All the public fields of the schema", direction=OUTPUT) public FieldMetadataV3[] fields
public SchemaMetadataV3()
public SchemaMetadataV3(SchemaMetadata impl)
public SchemaMetadata createImpl()
Schema
For objects without children this method does all the required work. For objects with children the subclass will need to override, e.g. by calling super.createImpl() and then calling createImpl() on its children.
Note that impl objects for schemas which override this method don't need to have a default constructor (e.g., a Keyed object constructor can still create and set the Key), but they must not fill any fields which can be filled later from the schema.
TODO: We could handle the common case of children with the same field names here by finding all of our fields that are themselves Schemas.
createImpl
in class Schema<SchemaMetadata,SchemaMetadataV3>
public SchemaMetadata fillImpl(SchemaMetadata impl)
Schema
fillImpl
in class Schema<SchemaMetadata,SchemaMetadataV3>
public SchemaMetadataV3 fillFromImpl(SchemaMetadata impl)
Schema
fillFromImpl
in class Schema<SchemaMetadata,SchemaMetadataV3>