Package org.supercsv.cellprocessor.time
Class AbstractTemporalAccessorParsingProcessor<T extends java.time.temporal.TemporalAccessor>
- java.lang.Object
-
- org.supercsv.cellprocessor.CellProcessorAdaptor
-
- org.supercsv.cellprocessor.time.AbstractTemporalAccessorParsingProcessor<T>
-
- Type Parameters:
T- theTemporalAccessortype that the processor returns
- All Implemented Interfaces:
CellProcessor,StringCellProcessor
- Direct Known Subclasses:
ParseLocalDate,ParseLocalDateTime,ParseLocalTime,ParseZonedDateTime
public abstract class AbstractTemporalAccessorParsingProcessor<T extends java.time.temporal.TemporalAccessor> extends CellProcessorAdaptor implements StringCellProcessor
Abstract base class for cell processors converting Strings toTemporalAccessortypes.- Since:
- 2.4.0
-
-
Field Summary
Fields Modifier and Type Field Description private java.time.format.DateTimeFormatterformatter-
Fields inherited from class org.supercsv.cellprocessor.CellProcessorAdaptor
next
-
-
Constructor Summary
Constructors Constructor Description AbstractTemporalAccessorParsingProcessor()Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype.AbstractTemporalAccessorParsingProcessor(java.time.format.DateTimeFormatter formatter)Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype using the supplied formatter.AbstractTemporalAccessorParsingProcessor(java.time.format.DateTimeFormatter formatter, CellProcessor next)Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype using the supplied formatter, then calls the next processor in the chain.AbstractTemporalAccessorParsingProcessor(CellProcessor next)Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype, then calls the next processor in the chain.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description private static voidcheckPreconditions(java.time.format.DateTimeFormatter formatter)Checks the preconditions for creating a new AbstractTemporalAccessorParsingProcessor processor.java.lang.Objectexecute(java.lang.Object value, CsvContext context)This method is invoked by the framework when the processor needs to process data or check constraints.protected abstract Tparse(java.lang.String string)Parses the String into the appropriateTemporalAccessortype.protected abstract Tparse(java.lang.String string, java.time.format.DateTimeFormatter formatter)Parses the String into the appropriateTemporalAccessortype, using the supplied formatter.-
Methods inherited from class org.supercsv.cellprocessor.CellProcessorAdaptor
toString, validateInputNotNull
-
-
-
-
Constructor Detail
-
AbstractTemporalAccessorParsingProcessor
public AbstractTemporalAccessorParsingProcessor()
Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype.
-
AbstractTemporalAccessorParsingProcessor
public AbstractTemporalAccessorParsingProcessor(CellProcessor next)
Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype, then calls the next processor in the chain.- Parameters:
next- the next processor in the chain- Throws:
java.lang.NullPointerException- if next is null
-
AbstractTemporalAccessorParsingProcessor
public AbstractTemporalAccessorParsingProcessor(java.time.format.DateTimeFormatter formatter)
Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype using the supplied formatter.- Parameters:
formatter- the formatter used for parsing- Throws:
java.lang.NullPointerException- if formatter is null
-
AbstractTemporalAccessorParsingProcessor
public AbstractTemporalAccessorParsingProcessor(java.time.format.DateTimeFormatter formatter, CellProcessor next)Constructs a new AbstractTemporalAccessorParsingProcessor processor, which parses a String as aTemporalAccessortype using the supplied formatter, then calls the next processor in the chain.- Parameters:
formatter- the formatter used for parsingnext- the next processor in the chain- Throws:
java.lang.NullPointerException- if formatter or next is null
-
-
Method Detail
-
checkPreconditions
private static void checkPreconditions(java.time.format.DateTimeFormatter formatter)
Checks the preconditions for creating a new AbstractTemporalAccessorParsingProcessor processor.- Parameters:
formatter- the formatter- Throws:
java.lang.NullPointerException- if formatter is null
-
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:
executein interfaceCellProcessor- Parameters:
value- the value to be processedcontext- the CSV context- Returns:
- the result of cell processor execution
- Throws:
SuperCsvCellProcessorException- if value is null or is not a String
-
parse
protected abstract T parse(java.lang.String string)
Parses the String into the appropriateTemporalAccessortype.- Parameters:
string- the string to parse- Returns:
- the
TemporalAccessortype - Throws:
java.lang.IllegalArgumentException- if the string can't be parsed
-
parse
protected abstract T parse(java.lang.String string, java.time.format.DateTimeFormatter formatter)
Parses the String into the appropriateTemporalAccessortype, using the supplied formatter.- Parameters:
string- the string to parseformatter- the formatter to use- Returns:
- the
TemporalAccessortype - Throws:
java.lang.IllegalArgumentException- if the string can't be parsed
-
-