Interface CsvExceptionHandler
-
- All Known Implementing Classes:
ExceptionHandlerIgnore
,ExceptionHandlerIgnoreThenThrowAfter
,ExceptionHandlerQueue
,ExceptionHandlerQueueThenThrowAfter
,ExceptionHandlerThrow
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface CsvExceptionHandler
This interface defines a generic way of dealing with exceptions thrown during the creation of beans or their conversion to CSV output.- Since:
- 5.2
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CsvException
handleException(CsvException e)
Determines how opencsv will handle exceptions that crop up during bean creation or writing.
-
-
-
Method Detail
-
handleException
CsvException handleException(CsvException e) throws CsvException
Determines how opencsv will handle exceptions that crop up during bean creation or writing. There are three ways of dealing with an exception:
- Ignore the exception. In this case, return
null
. - Queue the exception. In this case, return either the original exception thrown, or a new exception that meets your needs better.
- Halt processing by throwing the exception. In this case, throw the exception or a new exception that meets your needs better.
Please be cautioned: Due to the multi-threaded nature of opencsv's conversion routines, there is no guarantee that the exception thrown, if your chosen error handler throws exceptions, is the error in the input that would have caused the exception to be thrown if the input were processed in strict sequential order. That is, if there are four errors in the input and your error handler queues the first three but throws the fourth, the exception thrown might relate to any of the four errors in the input.
If your exception handler queues a certain number of exceptions before throwing one, opencsv makes a best-faith effort to make sure all of the exceptions marked for queueing are actually available via
CsvToBean.getCapturedExceptions()
orStatefulBeanToCsv.getCapturedExceptions()
after processing, but there are no absolute guarantees.This method must be thread-safe.
- Parameters:
e
- The exception that was thrown- Returns:
- The exception to be queued, or
null
if the exception should be ignored - Throws:
CsvException
- If a halt to all processing is desired
- Ignore the exception. In this case, return
-
-