Class SerialSchema
- All Implemented Interfaces:
Serializable, Cloneable, Map<String,Object>, org.refcodes.exception.ExceptionAccessor<Throwable>, org.refcodes.mixin.AliasAccessor, org.refcodes.mixin.ChildrenAccessor<org.refcodes.schema.Schema[]>, org.refcodes.mixin.DescriptionAccessor, org.refcodes.mixin.HashAccessor, org.refcodes.mixin.IdentifierAccessor, org.refcodes.mixin.KeyAccessor<String>, org.refcodes.mixin.LengthAccessor, org.refcodes.mixin.StereotypeAccessor<String>, org.refcodes.mixin.TypeAccessor, org.refcodes.mixin.ValueAccessor<Object>
public class SerialSchema
extends org.refcodes.schema.Schema
implements org.refcodes.mixin.LengthAccessor
The purpose of a
SerialSchema is to automatically outline and
generate documentation of serial data (structures).- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V> Nested classes/interfaces inherited from interface org.refcodes.mixin.AliasAccessor
org.refcodes.mixin.AliasAccessor.AliasBuilder<B>, org.refcodes.mixin.AliasAccessor.AliasMutator, org.refcodes.mixin.AliasAccessor.AliasPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.ChildrenAccessor
org.refcodes.mixin.ChildrenAccessor.ChildrenBuilder<T,B>, org.refcodes.mixin.ChildrenAccessor.ChildrenMutator<T>, org.refcodes.mixin.ChildrenAccessor.ChildrenProperty<T> Nested classes/interfaces inherited from interface org.refcodes.mixin.DescriptionAccessor
org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B>, org.refcodes.mixin.DescriptionAccessor.DescriptionMutator, org.refcodes.mixin.DescriptionAccessor.DescriptionPropertyNested classes/interfaces inherited from interface org.refcodes.exception.ExceptionAccessor
org.refcodes.exception.ExceptionAccessor.ExceptionBuilder<EXC,B>, org.refcodes.exception.ExceptionAccessor.ExceptionMutator<EXC>, org.refcodes.exception.ExceptionAccessor.ExceptionProperty<EXC> Nested classes/interfaces inherited from interface org.refcodes.mixin.HashAccessor
org.refcodes.mixin.HashAccessor.HashBuilder<B>, org.refcodes.mixin.HashAccessor.HashMutator, org.refcodes.mixin.HashAccessor.HashPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.IdentifierAccessor
org.refcodes.mixin.IdentifierAccessor.IdentifierBuilder<B>, org.refcodes.mixin.IdentifierAccessor.IdentifierMutator, org.refcodes.mixin.IdentifierAccessor.IdentifierPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.KeyAccessor
org.refcodes.mixin.KeyAccessor.KeyBuilder<K,B>, org.refcodes.mixin.KeyAccessor.KeyMutator<K>, org.refcodes.mixin.KeyAccessor.KeyProperty<K> Nested classes/interfaces inherited from interface org.refcodes.mixin.LengthAccessor
org.refcodes.mixin.LengthAccessor.LengthBuilder<B>, org.refcodes.mixin.LengthAccessor.LengthMutator, org.refcodes.mixin.LengthAccessor.LengthPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.StereotypeAccessor
org.refcodes.mixin.StereotypeAccessor.StereotypeBuilder<T,B>, org.refcodes.mixin.StereotypeAccessor.StereotypeMutator<T>, org.refcodes.mixin.StereotypeAccessor.StereotypeProperty<T> Nested classes/interfaces inherited from interface org.refcodes.mixin.TypeAccessor
org.refcodes.mixin.TypeAccessor.TypeBuilder<T,B>, org.refcodes.mixin.TypeAccessor.TypeMutator<T>, org.refcodes.mixin.TypeAccessor.TypeProperty<T> Nested classes/interfaces inherited from interface org.refcodes.mixin.ValueAccessor
org.refcodes.mixin.ValueAccessor.ValueBuilder<V,B>, org.refcodes.mixin.ValueAccessor.ValueMutator<V>, org.refcodes.mixin.ValueAccessor.ValueProperty<V> -
Field Summary
FieldsFields inherited from class org.refcodes.schema.Schema
_children, ALIAS, ASSOCIATION, DESCRIPTION, EXCEPTION, HASH, HASH_SEPARATOR, IDENTIFIER, KEY, STEREOTYPE, TYPE, VALUE -
Constructor Summary
ConstructorsConstructorDescriptionSerialSchema(String aIdentifier, String aAlias, String aKey, Class<?> aType, Integer aHash, String aStereotype, Object aValue, Throwable aException, String aDescription, org.refcodes.schema.Schema aSchema, org.refcodes.schema.Schema[] aChildren) Constructs aSerialSchemawith the provided arguments. -
Method Summary
Modifier and TypeMethodDescriptionstatic SerialSchema.Builderbuilder()Creates builder to buildSerialSchema.intRetrieves the more verbose view on the structure of the data.Methods inherited from class org.refcodes.schema.Schema
getAlias, getChildren, getDescription, getException, getHash, getIdentifier, getKey, getStereotype, getType, getValue, init, toLabel, toNotation, toObjectId, toSimpleObjectId, toString, visitMethods inherited from class HashMap
clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, forEach, get, getOrDefault, isEmpty, keySet, merge, newHashMap, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, valuesMethods inherited from class AbstractMap
equals, hashCodeMethods inherited from interface org.refcodes.mixin.ValueAccessor
getValueOr
-
Field Details
-
LENGTH
- See Also:
-
VERBOSE
- See Also:
-
-
Constructor Details
-
SerialSchema
public SerialSchema(String aIdentifier, String aAlias, String aKey, Class<?> aType, Integer aHash, String aStereotype, Object aValue, Throwable aException, String aDescription, org.refcodes.schema.Schema aSchema, org.refcodes.schema.Schema[] aChildren) Constructs aSerialSchemawith the provided arguments.- Parameters:
aIdentifier- The identifier being the label for theSchema, when null thealias, thekeyor thetype's simple name prefixed with the@character alongside thehash(or this instance's identity has code when null).aAlias- The alias (name) describing thisSchema, whennull, then the alias is extrapolated from the identifier's portion till the last@character (if any).aKey- The key (of a value) provided with thisSchemaaType- The type described by thisSchema.aHash- The hash if the instance described by thisSchema.aStereotype- The stereotype related with thisSchema.aValue- The value representing thisSchema.aException- TheThrowablerelated with thisSchema.aDescription- The description for thisSchema.aSchema- TheSchemafrom which to copy from (in case of not being explicitly set by the arguments).aChildren- TheSchema's children (aggregation structure).
-
-
Method Details
-
getLength
public int getLength()- Specified by:
getLengthin interfaceorg.refcodes.mixin.LengthAccessor
-
getVerbose
Retrieves the more verbose view on the structure of the data.- Returns:
- The more verbose view on the structure of the data.
-
builder
Creates builder to buildSerialSchema.- Returns:
- created builder
-