public ISagaStepAdapter Create(ISagaServiceProvider provider) { if (provider is null) { throw new ArgumentNullException(nameof(provider)); } return(new SagaStepAdapter <TEvent>(Version, Index, provider.Resolve <TEvent, TStep>())); }
public SagaProcessor( ISagaVersionStepResolver resolver, ISagaServiceProvider provider, ISagaProcess process, ILoggerAdapter <SagaProcessor> logger) { _resolver = resolver; _provider = provider; _process = process; _logger = logger; _steps = new Dictionary <ISagaVersion, IList <ISagaStepConfiguration> >(); }