- All Superinterfaces:
IAttributable,IConfigurableMessageConstraint,IConstraint,IDescribable,IKeyConstraint
Represents a rule that generates a key-based index containing references to
data items found in a Metaschema data instance.
The generated index can be used to check cross-references between Metaschema
data objects using the IIndexHasKeyConstraint.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classProvides a builder pattern for constructing a newIIndexConstraint.Nested classes/interfaces inherited from interface dev.metaschema.core.model.IAttributable
IAttributable.KeyNested classes/interfaces inherited from interface dev.metaschema.core.model.constraint.IConstraint
IConstraint.Level, IConstraint.Type -
Field Summary
Fields inherited from interface dev.metaschema.core.model.IAttributable
DEFAULT_PROPERY_NAMESPACE -
Method Summary
Modifier and TypeMethodDescriptiondefault <T,R> R accept(IConstraintVisitor<T, R> visitor, T state) Used for double dispatch supporting the visitor pattern provided by implementations ofIConstraintVisitor.static IIndexConstraint.BuilderCreate a new constraint builder.getName()Get the identifying name of the index, which is used to refer to the index by anIIndexHasKeyConstraint.default IConstraint.TypegetType()Get the constraint type.Methods inherited from interface dev.metaschema.core.model.IAttributable
getProperties, getPropertyValues, hasProperty, hasPropertyValueMethods inherited from interface dev.metaschema.core.model.constraint.IConfigurableMessageConstraint
generateMessage, getMessageMethods inherited from interface dev.metaschema.core.model.constraint.IConstraint
getId, getLevel, getRemarks, getSource, getTarget, matchTargetsMethods inherited from interface dev.metaschema.core.model.IDescribable
getDescription, getEffectiveDescription, getEffectiveFormalName, getFormalNameMethods inherited from interface dev.metaschema.core.model.constraint.IKeyConstraint
getKeyFields
-
Method Details
-
getType
Description copied from interface:IConstraintGet the constraint type.- Specified by:
getTypein interfaceIConstraint- Returns:
- the constraint type
-
getName
Get the identifying name of the index, which is used to refer to the index by anIIndexHasKeyConstraint.- Returns:
- the name of the index
-
accept
Description copied from interface:IConstraintUsed for double dispatch supporting the visitor pattern provided by implementations ofIConstraintVisitor.- Specified by:
acceptin interfaceIConstraint- Type Parameters:
T- the Java type of a state object passed to the visitorR- the Java type of the result returned by the visitor methods- Parameters:
visitor- the visitor implementationstate- the state object passed to the visitor- Returns:
- the visitation result
- See Also:
-
builder
Create a new constraint builder.- Parameters:
name- the identifier for the index- Returns:
- the builder
-