Package com.opencsv.validators
Class LineValidatorAggregator
- java.lang.Object
-
- com.opencsv.validators.LineValidatorAggregator
-
public class LineValidatorAggregator extends java.lang.Object
The aggregator's purpose is to collect multipleLineValidator
s and run them against a single line. This way complex validations can be performed.- Since:
- 5.0
-
-
Field Summary
Fields Modifier and Type Field Description private static int
CAPACITY
private static int
MULTIPLIER
private java.util.List<LineValidator>
validators
-
Constructor Summary
Constructors Constructor Description LineValidatorAggregator()
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addValidator(LineValidator validator)
Add an validator to the aggregator.boolean
isValid(java.lang.String line)
Runs all LineValidators'LineValidator.isValid(String)
method against the line.(package private) void
setValidators(java.util.List<LineValidator> validators)
Setter created for unit test.void
validate(java.lang.String line)
Runs all LineValidators validate commands and if the string is invalid then it combines all the validation error messages in a single CsvValidationException.
-
-
-
Field Detail
-
CAPACITY
private static final int CAPACITY
- See Also:
- Constant Field Values
-
MULTIPLIER
private static final int MULTIPLIER
- See Also:
- Constant Field Values
-
validators
private java.util.List<LineValidator> validators
-
-
Method Detail
-
addValidator
public void addValidator(LineValidator validator)
Add an validator to the aggregator.- Parameters:
validator
- Validator to be added.
-
isValid
public boolean isValid(java.lang.String line)
Runs all LineValidators'LineValidator.isValid(String)
method against the line. This is a short circuit: as soon as one validator returnsfalse
thenfalse
is returned.- Parameters:
line
- String to be validated.- Returns:
true
if all validators'LineValidator.isValid(String)
methods returntrue
,false
otherwise.
-
validate
public void validate(java.lang.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(java.util.List<LineValidator> validators)
Setter created for unit test.- Parameters:
validators
- - list of validators to use.
-
-