class SagaExecutionTask implements ExecutedRunnable {

    @Override
    public <T> Optional<T> getHeaderValue(final HeaderName<T> header) {
        return taskLookupContext.getHeaderValue(header);
    }

    @Inject  SagaExecutionTask(
            final SagaEnvironment environment,
            final HandlerInvoker invoker,
            final Object message,
            final Map<HeaderName<?>, Object> headers,
            @Nullable final ExecutionContext parentContext);

}