Module dev.metaschema.databind
Package dev.metaschema.databind.model
Interface IBoundDefinitionModelFieldComplex
- All Superinterfaces:
dev.metaschema.core.model.IAttributable,IBoundDefinition,IBoundDefinitionModel<dev.metaschema.core.model.IBoundObject>,IBoundDefinitionModelComplex,IBoundDefinitionModelField<dev.metaschema.core.model.IBoundObject>,IBoundModelElement,IBoundModelObject<dev.metaschema.core.model.IBoundObject>,dev.metaschema.core.model.IContainer,dev.metaschema.core.model.IDefaultable,dev.metaschema.core.model.IDefinition,dev.metaschema.core.model.IDescribable,IFeatureComplexItemValueHandler,dev.metaschema.core.model.IFeatureContainerFlag<IBoundInstanceFlag>,dev.metaschema.core.model.constraint.IFeatureValueConstrained,dev.metaschema.core.model.IField,dev.metaschema.core.model.IFieldDefinition,IItemValueHandler<dev.metaschema.core.model.IBoundObject>,dev.metaschema.core.model.IJsonNamed,dev.metaschema.core.model.IModelDefinition,dev.metaschema.core.model.IModelElement,dev.metaschema.core.model.IModelElementVisitable,dev.metaschema.core.model.INamed,dev.metaschema.core.model.INamedModelElement,dev.metaschema.core.model.constraint.IValueConstrained,dev.metaschema.core.model.IValuedDefinition
public interface IBoundDefinitionModelFieldComplex
extends IBoundDefinitionModelField<dev.metaschema.core.model.IBoundObject>, IBoundDefinitionModelComplex
Represents a field definition bound to a Java class.
This definition is considered "complex", since it is bound to a Java class.
-
Nested Class Summary
Nested classes/interfaces inherited from interface dev.metaschema.core.model.IAttributable
dev.metaschema.core.model.IAttributable.KeyNested classes/interfaces inherited from interface dev.metaschema.core.model.IDefinition
dev.metaschema.core.model.IDefinition.ModuleScope -
Field Summary
Fields inherited from interface dev.metaschema.core.model.IAttributable
DEFAULT_PROPERY_NAMESPACEFields inherited from interface dev.metaschema.core.model.IDefinition
DEFAULT_MODULE_SCOPE -
Method Summary
Modifier and TypeMethodDescriptiondefault booleancanHandleXmlQName(dev.metaschema.core.qname.IEnhancedQName qname) Determine if the provided XML qualified name is associated with this property.default ObjectGet the Metaschema definition representing the bound complex data.Get the bound field value associated with this field.default ObjectgetFieldValue(Object item) default dev.metaschema.core.datatype.IDataTypeAdapter<?>default Map<String,IBoundProperty<?>> getJsonProperties(Predicate<IBoundInstanceFlag> flagFilter) Get a mapping of JSON property names to their corresponding bound properties.default Stringdefault dev.metaschema.core.model.IBoundObjectreadItem(dev.metaschema.core.model.IBoundObject parent, IItemReadHandler handler) Parse and return an item.default voidwriteItem(dev.metaschema.core.model.IBoundObject item, IItemWriteHandler handler) Write the provided item.Methods inherited from interface dev.metaschema.core.model.IAttributable
getProperties, getPropertyValues, hasProperty, hasPropertyValueMethods inherited from interface dev.metaschema.databind.model.IBoundDefinitionModel
getBindingContext, getInlineInstanceMethods inherited from interface dev.metaschema.databind.model.IBoundDefinitionModelComplex
callAfterDeserialize, callBeforeDeserialize, getAfterDeserializeMethod, getBeforeDeserializeMethodMethods inherited from interface dev.metaschema.databind.model.IBoundDefinitionModelField
getInlineInstance, getJsonValueKeyFlagInstanceMethods inherited from interface dev.metaschema.databind.model.IBoundModelElement
getContainingModuleMethods inherited from interface dev.metaschema.core.model.IDefaultable
getEffectiveDefaultValue, getResolvedDefaultValueMethods inherited from interface dev.metaschema.core.model.IDefinition
getDefinitionQName, getLocation, getModuleScope, toCoordinatesMethods inherited from interface dev.metaschema.core.model.IDescribable
getDescription, getEffectiveDescription, getEffectiveFormalName, getFormalNameMethods inherited from interface dev.metaschema.databind.model.info.IFeatureComplexItemValueHandler
deepCopyItem, getBoundClass, getJsonProperties, newInstanceMethods inherited from interface dev.metaschema.core.model.IFeatureContainerFlag
getFlagContainer, getFlagInstanceByName, getFlagInstances, getJsonKeyMethods inherited from interface dev.metaschema.core.model.constraint.IFeatureValueConstrained
addConstraint, addConstraint, addConstraint, addConstraint, addConstraint, addLetExpression, getAllowedValuesConstraints, getConstraints, getConstraintSupport, getExpectConstraints, getIndexHasKeyConstraints, getLetExpressions, getMatchesConstraints, getReportConstraintsMethods inherited from interface dev.metaschema.core.model.IField
getModelTypeMethods inherited from interface dev.metaschema.core.model.IFieldDefinition
accept, getEffectiveJsonValueKeyName, getJsonValueKey, hasJsonValueKeyFlagInstance, isInlineMethods inherited from interface dev.metaschema.core.model.IModelDefinition
hasChildrenMethods inherited from interface dev.metaschema.core.model.IModelElement
getRemarksMethods inherited from interface dev.metaschema.core.model.INamed
getEffectiveIndex, getEffectiveName, getIndex, getName, getQName, getUseIndex, getUseNameMethods inherited from interface dev.metaschema.core.model.INamedModelElement
getJsonNameMethods inherited from interface dev.metaschema.core.model.constraint.IValueConstrained
getSource
-
Method Details
-
getDefinition
Description copied from interface:IFeatureComplexItemValueHandlerGet the Metaschema definition representing the bound complex data.- Specified by:
getDefinitionin interfaceIFeatureComplexItemValueHandler- Returns:
- the definition
-
getDefaultValue
- Specified by:
getDefaultValuein interfacedev.metaschema.core.model.IDefaultable
-
getFieldValue
Get the bound field value associated with this field.- Returns:
- the field's value binding
-
getFieldValue
- Specified by:
getFieldValuein interfacedev.metaschema.core.model.IFieldDefinition
-
getJsonValueKeyName
- Specified by:
getJsonValueKeyNamein interfacedev.metaschema.core.model.IFieldDefinition
-
getJavaTypeAdapter
- Specified by:
getJavaTypeAdapterin interfacedev.metaschema.core.model.IValuedDefinition
-
getJsonProperties
@NonNull default Map<String,IBoundProperty<?>> getJsonProperties(@Nullable Predicate<IBoundInstanceFlag> flagFilter) Description copied from interface:IBoundDefinitionModelComplexGet a mapping of JSON property names to their corresponding bound properties.- Specified by:
getJsonPropertiesin interfaceIBoundDefinitionModelComplex- Parameters:
flagFilter- a predicate to filter which flag instances to include, ornullto include all flags- Returns:
- a map of property names to bound properties
-
readItem
@NonNull default dev.metaschema.core.model.IBoundObject readItem(dev.metaschema.core.model.IBoundObject parent, IItemReadHandler handler) throws IOException Description copied from interface:IItemValueHandlerParse and return an item.- Specified by:
readItemin interfaceIItemValueHandler<dev.metaschema.core.model.IBoundObject>- Parameters:
parent- the parent Java object to use for serialization callbacks, ornullif there is no parenthandler- the item parsing handler- Returns:
- the Java object representing the parsed item
- Throws:
IOException- if an error occurred while parsing
-
writeItem
default void writeItem(dev.metaschema.core.model.IBoundObject item, IItemWriteHandler handler) throws IOException Description copied from interface:IItemValueHandlerWrite the provided item.- Specified by:
writeItemin interfaceIItemValueHandler<dev.metaschema.core.model.IBoundObject>- Parameters:
item- the data to writehandler- the item writing handler- Throws:
IOException- if an error occurred while writing
-
canHandleXmlQName
Description copied from interface:IBoundModelObjectDetermine if the provided XML qualified name is associated with this property.- Specified by:
canHandleXmlQNamein interfaceIBoundModelObject<dev.metaschema.core.model.IBoundObject>- Parameters:
qname- the XML qualified name of the property being parsed- Returns:
trueif the instance will handle this name, orfalseotherwise
-