Class StrMinMax
- java.lang.Object
-
- org.supercsv.cellprocessor.CellProcessorAdaptor
-
- org.supercsv.cellprocessor.constraint.StrMinMax
-
- All Implemented Interfaces:
CellProcessor
,StringCellProcessor
public class StrMinMax extends CellProcessorAdaptor implements StringCellProcessor
This constraint ensures that the input data has a string length between the supplied min and max values (both inclusive). Should the input be anything different from a String, it will be converted to a string using the input'stoString()
method.
-
-
Field Summary
Fields Modifier and Type Field Description private long
max
private long
min
-
Fields inherited from class org.supercsv.cellprocessor.CellProcessorAdaptor
next
-
-
Constructor Summary
Constructors Constructor Description StrMinMax(long min, long max)
Constructs a new StrMinMax processor, which ensures that the input data has a string length between the supplied min and max values (both inclusive).StrMinMax(long min, long max, CellProcessor next)
Constructs a new StrMinMax processor, which ensures that the input data has a string length between the supplied min and max values (both inclusive), then calls the next processor in the chain.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static void
checkPreconditions(long min, long max)
Checks the preconditions for creating a new StrMinMax processor.java.lang.Object
execute(java.lang.Object value, CsvContext context)
This method is invoked by the framework when the processor needs to process data or check constraints.-
Methods inherited from class org.supercsv.cellprocessor.CellProcessorAdaptor
toString, validateInputNotNull
-
-
-
-
Constructor Detail
-
StrMinMax
public StrMinMax(long min, long max)
Constructs a new StrMinMax processor, which ensures that the input data has a string length between the supplied min and max values (both inclusive).- Parameters:
min
- the minimum String lengthmax
- the maximum String length- Throws:
java.lang.IllegalArgumentException
- ifmax < min
, ormin is < 0
-
StrMinMax
public StrMinMax(long min, long max, CellProcessor next)
Constructs a new StrMinMax processor, which ensures that the input data has a string length between the supplied min and max values (both inclusive), then calls the next processor in the chain.- Parameters:
min
- the minimum String lengthmax
- the maximum String lengthnext
- the next processor in the chain- Throws:
java.lang.NullPointerException
- if next is nulljava.lang.IllegalArgumentException
- ifmax < min
, ormin is < 0
-
-
Method Detail
-
checkPreconditions
private static void checkPreconditions(long min, long max)
Checks the preconditions for creating a new StrMinMax processor.- Parameters:
min
- the minimum String lengthmax
- the maximum String length- Throws:
java.lang.IllegalArgumentException
- ifmax < min
, ormin is < 0
-
execute
public java.lang.Object execute(java.lang.Object value, CsvContext context)
This method is invoked by the framework when the processor needs to process data or check constraints.- Specified by:
execute
in interfaceCellProcessor
- Parameters:
value
- the value to be processedcontext
- the CSV context- Returns:
- the result of cell processor execution
- Throws:
SuperCsvCellProcessorException
- if value is nullSuperCsvConstraintViolationException
- iflength < min
orlength > max
-
-