1 package com.opencsv.validators; 2 3 import com.opencsv.exceptions.CsvValidationException; 4 5 /** 6 * This is the interface for validators for a {@link String} read by the 7 * {@link java.io.Reader} in the {@link com.opencsv.CSVReader} before it is 8 * processed. 9 * <p>This should only be used if you have a very good understanding and full 10 * control of the data being processed.</p> 11 * <p>Since this is working on an individual line it may not be a full record 12 * if an element has a newline character in it.</p> 13 * 14 * @author Scott Conway 15 * @since 5.0 16 */ 17 public interface LineValidator { 18 /** 19 * Performs the validation check on the string and returns the result. 20 * 21 * While not called directly in opencsv it is in the interface to provide 22 * an easy way to test if the validator is function properly. 23 * 24 * @param line {@link String} to be validated 25 * @return {@code true} if the line is valid, {@code false} otherwise 26 */ 27 boolean isValid(String line); 28 29 /** 30 * Performs the validation check on the string and throws an exception if 31 * invalid. 32 * 33 * @param line {@link String} to be validated 34 * @throws CsvValidationException Thrown if invalid. Should contain a 35 * message describing the error. 36 */ 37 void validate(String line) throws CsvValidationException; 38 }