Interface ProcessorErrorHandler<T extends Context>

All Known Subinterfaces:
RowProcessorErrorHandler
All Known Implementing Classes:
NoopProcessorErrorHandler, NoopRowProcessorErrorHandler, RetryableErrorHandler

public interface ProcessorErrorHandler<T extends Context>
The ProcessorErrorHandler is a callback used by the parser/writer to handle non-fatal DataProcessingExceptions that may occur when processing rows using a Processor or RowWriterProcessor. This leaves the responsibility of error handling to the user. If the user does not rethrow the DataProcessingException, the parsing/writing process won't stop and will proceed normally.

This error handler WILL NOT handle TextParsingExceptions or other errors that prevent the parser to reliably extract rows from a given input, or the writer to proceed writing data.

When parsing, the handleError(DataProcessingException, Object[], Context) method will be called only when a valid record has been parsed, but the subsequent processing executed by a Processor fails.

When writing, the handleError(DataProcessingException, Object[], Context) method will be called only when a using the AbstractWriter.processRecord(Object) methods, and RowWriterProcessor fails to execute.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    handleError(DataProcessingException error, Object[] inputRow, T context)
    Handles non-fatal instances of DataProcessingException that are thrown by a Processor while processing a record parsed from the input, or from a RowWriterProcessor when processing records for writing.
  • Method Details

    • handleError

      void handleError(DataProcessingException error, Object[] inputRow, T context)
      Handles non-fatal instances of DataProcessingException that are thrown by a Processor while processing a record parsed from the input, or from a RowWriterProcessor when processing records for writing.
      Parameters:
      error - the exception thrown during the processing an input record. Rethrow the error to abort the parsing process. When parsing, you can also invoke Context.stop() to stop the parser silently.
      inputRow - the record that could not be processed. When writing, the original input object (i.e. null, java bean or object array) will be sent by the writer.
      context - the parsing context with information about the state of the parser at the time the error occurred. Will be null when writing.