public void Execute(TBatchArgs args, CancellationToken cancellationToken = default) { foreach (var context in _argsToContextsMapping(args, cancellationToken)) { try { _command.Execute(context, cancellationToken); _successHandler?.Invoke(context, cancellationToken); } catch (Exception e) { _failureHandler?.Invoke(context, e, cancellationToken); } } }