FailureRecorder
Records event-processing failures durably, so that they can be compensated (retried) later.
The event handlers of event processors, projections, stateless sagas and snapshots call it once per function, after the function's filter chain (including RetryableFilter) has terminated:
on failure, recordFailure tells whether the failure was recorded; a failed recording leaves the message unacknowledged (ProcessingOutcome.RECORDING_FAILED);
on success, recordSuccess lets the recorder close a failure it recorded before (for example a compensation execution that now succeeded).
The default, NONE, records nothing: a failure is ProcessingOutcome.FAILURE_UNRECORDED. wow-compensation-core provides the durable recorder.
Functions
Called after the function of exchange processed its event.