async Task FinishProcessing(ITransactionRecordContainer transaction)
        {
            log.Log($"Publishing side effects of processing message {transaction.MessageId} (successful attempt {transaction.AttemptId}).");
            await PublishSideEffects(transaction).ConfigureAwait(false);

            log.Log($"Clearing transaction state for message {transaction.MessageId}.");
            await transaction.ClearTransactionState().ConfigureAwait(false);
        }
 public Task ClearTransactionState()
 {
     return(impl.ClearTransactionState());
 }