Class RetryableErrorHandler<T extends Context>
java.lang.Object
com.univocity.parsers.common.RetryableErrorHandler<T>
- All Implemented Interfaces:
ProcessorErrorHandler<T>
public abstract class RetryableErrorHandler<T extends Context>
extends Object
implements ProcessorErrorHandler<T>
A
ProcessorErrorHandler implementation that gives the user a chance to provide a default value for
columns that could not be processed due to an exception, through the method setDefaultValue(Object).
This must be called from within the implementation of the
ProcessorErrorHandler.handleError(DataProcessingException, Object[], Context) method, and will prevent the record from being
discarded. The value provided by the user will be assigned to the problematic input row, at the column defined by
DataProcessingException.getColumnIndex().
NOTE:If the column index is < 0, then the record can't be
salvaged and it will be discarded regardless of the user calling setDefaultValue(Object) or not.- Author:
- Univocity Software Pty Ltd - parsers@univocity.com
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal ObjectReturns the default value to be assigned to the problematic column that raised the currentDataProcessingException.final booleanFlag indicating whether the current record will be skipped.final voidIgnores theDataProcessingExceptionand instructs the parser/writer to continue processing the record.final voidsetDefaultValue(Object defaultValue) Assigns a default value to be assigned to the problematic column that raised the currentDataProcessingException.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ProcessorErrorHandler
handleError
-
Constructor Details
-
RetryableErrorHandler
public RetryableErrorHandler()
-
-
Method Details
-
setDefaultValue
Assigns a default value to be assigned to the problematic column that raised the currentDataProcessingException. The current column is available from the exception itself, i.e.DataProcessingException.getColumnIndex(). NOTE:If the column index is< 0, then the record can't be salvaged and it will be discarded regardless of the user callingsetDefaultValue(Object)or not.- Parameters:
defaultValue- the value to be used for the current column. It will be discarded after handling the currentDataProcessingException.
-
keepRecord
public final void keepRecord()Ignores theDataProcessingExceptionand instructs the parser/writer to continue processing the record. -
getDefaultValue
Returns the default value to be assigned to the problematic column that raised the currentDataProcessingException. The current column is available from the exception itself, i.e.DataProcessingException.getColumnIndex(). NOTE:If the column index is< 0, then the record can't be salvaged and it will be discarded regardless of the user callingsetDefaultValue(Object)or not.- Returns:
- the value to be used for the current column. It will be discarded after handling the current
DataProcessingException.
-
isRecordSkipped
public final boolean isRecordSkipped()Flag indicating whether the current record will be skipped. Returnstrueby default unless the user invokessetDefaultValue(Object)from within theProcessorErrorHandler.handleError(DataProcessingException, Object[], Context)method implementation, in which case the current record will continue to be processed.- Returns:
trueif the record originating the currentDataProcessingExceptionshould be skipped, otherwisefalse
-