AndRule

Validation rule that allows you to check combinations of rules created with AND logical operations.

Implements: IValidationRule

Description

The AndRule class allows you to validate combinations of rules created with AND logical operations.

Important points

  • When one or more of the combined rules return errors, then this rule returns all the errors that appeared.
  • When none of the combined rules returns errors, then this rule also returns no errors.

Constructors

Creates a new validation rule and sets its values.

public AndRule(IValidationRule… rules)

Instance methods

validate

Validates a given value against this rule.

public void validate(String path, Schema schema, Object value, List<ValidationResult> results)

  • path: string - dot notation path to the value.
  • schema: Schema - schema this rule is called from.
  • value: Object - value to be validated.
  • results: List<ValidationResult> - list with validation results to add new results.

Example

{@code
  Schema schema = new Schema()
       .withRule(new AndRule(
           new ValueComparisonRule("GTE", 1),
           new ValueComparisonRule("LTE", 10)
       ));
  
  schema.validate(0);          // Result: 0 must be greater or equal to 1
  schema.validate(5);          // Result: no error
  schema.validate(20);         // Result: 20 must be letter or equal 10
  }

See also