Class AllConstraint

java.lang.Object
io.fluxcapacitor.common.api.search.constraints.AllConstraint
All Implemented Interfaces:
Constraint

public class AllConstraint extends Object implements Constraint
A composite constraint that requires all inner constraints to match.

This is equivalent to a logical AND operation over the contained constraints. The document must satisfy every inner constraint in the list for the AllConstraint to match.

If the constraint list is empty, this becomes a no-op constraint that matches all documents. If only one constraint is provided, it is returned directly to avoid unnecessary nesting.

See Also:
  • Constructor Details

    • AllConstraint

      public AllConstraint()
  • Method Details

    • all

      public static Constraint all(Constraint... constraints)
      Creates an AllConstraint from the given array of constraints.

      If the array is empty, a NoOpConstraint is returned. If only one constraint is provided, that constraint is returned directly.

      Parameters:
      constraints - one or more constraints to combine
      Returns:
      a constraint that requires all inputs to match
    • all

      public static Constraint all(Collection<Constraint> constraints)
      Creates an AllConstraint from the given collection of constraints.

      If the collection is empty, a NoOpConstraint is returned. If it contains only one constraint, that constraint is returned directly.

      Parameters:
      constraints - a collection of constraints to combine
      Returns:
      a constraint that requires all inputs to match
    • matches

      public boolean matches(Document document)
      Description copied from interface: Constraint
      Evaluates whether this constraint applies to the given document.
      Specified by:
      matches in interface Constraint
      Parameters:
      document - the document to test
      Returns:
      true if the constraint matches the document
    • hasPathConstraint

      public boolean hasPathConstraint()
      Description copied from interface: Constraint
      Indicates whether this constraint targets specific paths in the document.
      Specified by:
      hasPathConstraint in interface Constraint
      Returns:
      true if path-based filtering is involved