コード例 #1
0
        public ISagaStepAdapter Create(ISagaServiceProvider provider)
        {
            if (provider is null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            return(new SagaStepAdapter <TEvent>(Version, Index, provider.Resolve <TEvent, TStep>()));
        }
コード例 #2
0
        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> >();
        }