Interface IIndexHasKeyConstraint

All Superinterfaces:
IAttributable, IConfigurableMessageConstraint, IConstraint, IDescribable, IKeyConstraint

public interface IIndexHasKeyConstraint extends IKeyConstraint
Represents a rule that checks that a key generated for a Metaschema data object exists in a named index that was generated using an IIndexConstraint.
  • Method Details

    • getType

      Description copied from interface: IConstraint
      Get the constraint type.
      Specified by:
      getType in interface IConstraint
      Returns:
      the constraint type
    • getIndexName

      @NonNull String getIndexName()
      The name of the index used to verify cross references.
      Returns:
      the name of the index this constraint uses for lookups
    • accept

      default <T, R> R accept(IConstraintVisitor<T,R> visitor, T state)
      Description copied from interface: IConstraint
      Used for double dispatch supporting the visitor pattern provided by implementations of IConstraintVisitor.
      Specified by:
      accept in interface IConstraint
      Type Parameters:
      T - the Java type of a state object passed to the visitor
      R - the Java type of the result returned by the visitor methods
      Parameters:
      visitor - the visitor implementation
      state - the state object passed to the visitor
      Returns:
      the visitation result
      See Also:
    • builder

      @NonNull static IIndexHasKeyConstraint.Builder builder(@NonNull String useIndex)
      Create a new constraint builder.
      Parameters:
      useIndex - the index name
      Returns:
      the builder