Class LineValidatorAggregator

java.lang.Object
com.opencsv.validators.LineValidatorAggregator

public class LineValidatorAggregator extends Object
The aggregator's purpose is to collect multiple LineValidators and run them against a single line. This way complex validations can be performed.
Since:
5.0
  • Field Details

  • Constructor Details

    • LineValidatorAggregator

      public LineValidatorAggregator()
      Default constructor.
  • Method Details

    • addValidator

      public void addValidator(LineValidator validator)
      Add an validator to the aggregator.
      Parameters:
      validator - Validator to be added.
    • isValid

      public boolean isValid(String line)
      Runs all LineValidators' LineValidator.isValid(String) method against the line. This is a short circuit: as soon as one validator returns false then false is returned.
      Parameters:
      line - String to be validated.
      Returns:
      true if all validators' LineValidator.isValid(String) methods return true, false otherwise.
    • validate

      public void validate(String line) throws CsvValidationException
      Runs all LineValidators validate commands and if the string is invalid then it combines all the validation error messages in a single CsvValidationException.
      Parameters:
      line - String to be validated
      Throws:
      CsvValidationException - Thrown if the string is invalid
    • setValidators

      void setValidators(List<LineValidator> validators)
      Setter created for unit test.
      Parameters:
      validators - - list of validators to use.