コード例 #1
0
 public SingleMethodInvoker(
     ITransitionScope transitionScope,
     IServiceResolver serviceResolver,
     IMethodResolver methodResolver,
     ICommunicationSettingsProvider communicationSettingsProvider,
     ICommunicatorProvider communicatorProvider,
     ILocalMethodRunner localMethodRunner)
 {
     _transitionScope = transitionScope;
     _serviceResolver = serviceResolver;
     _methodResolver  = methodResolver;
     _communicationSettingsProvider = communicationSettingsProvider;
     _communicatorProvider          = communicatorProvider;
     _localMethodRunner             = localMethodRunner;
 }
コード例 #2
0
        public MethodStateStorageProvider(
            ICommunicationSettingsProvider communicationSettingsProvider,
            IEnumerable <IConfiguration> safeConfiguration,
            IServiceResolver serviceResolver,
            IMethodResolver methodResolver,
            IEnumerable <IPersistenceMethod> persistenceMethods)
        {
            _communicationSettingsProvider = communicationSettingsProvider;
            _serviceResolver = serviceResolver;
            _methodResolver  = methodResolver;

            _configuration = safeConfiguration.FirstOrDefault()?.GetSection("dasync")
                             ?? (IConfiguration) new ConfigurationRoot(Array.Empty <IConfigurationProvider>());

            _persistenceMethods = persistenceMethods.ToDictionary(m => m.Type, m => m, StringComparer.OrdinalIgnoreCase);
        }
コード例 #3
0
        public EventPublisherProvider(
            ICommunicationSettingsProvider communicationSettingsProvider,
            IEnumerable <IConfiguration> safeConfiguration,
            IServiceResolver serviceResolver,
            IEventResolver eventResolver,
            IExternalCommunicationModel externalCommunicationModel,
            IEnumerable <IEventingMethod> eventingMethods)
        {
            _communicationSettingsProvider = communicationSettingsProvider;
            _serviceResolver            = serviceResolver;
            _eventResolver              = eventResolver;
            _externalCommunicationModel = externalCommunicationModel;

            _configuration = safeConfiguration.FirstOrDefault()?.GetSection("dasync")
                             ?? (IConfiguration) new ConfigurationRoot(Array.Empty <IConfigurationProvider>());

            _eventingMethods = eventingMethods.ToDictionary(m => m.Type, m => m, StringComparer.OrdinalIgnoreCase);
        }
コード例 #4
0
 public TransitionRunner(
     ITransitionScope transitionScope,
     IAsyncStateMachineMetadataProvider asyncStateMachineMetadataProvider,
     //IServiceStateValueContainerProvider serviceStateValueContainerProvider,
     IUniqueIdGenerator idGenerator,
     ITaskCompletionSourceRegistry taskCompletionSourceRegistry,
     IServiceResolver serviceResolver,
     IMethodResolver methodResolver,
     IEventResolver eventResolver,
     ICommunicatorProvider communicatorProvider,
     IEventPublisherProvider eventPublisherProvider,
     IRoutineCompletionSink routineCompletionSink,
     ICommunicationSettingsProvider communicationSettingsProvider,
     IDefaultSerializerProvider defaultSerializerProvider,
     ISerializerProvider serializeProvder,
     IMethodStateStorageProvider methodStateStorageProvider,
     IValueContainerCopier valueContainerCopier,
     IEventSubscriber eventSubscriber,
     ITaskContinuationClassifier taskContinuationClassifier)
 {
     _transitionScope = transitionScope;
     _asyncStateMachineMetadataProvider = asyncStateMachineMetadataProvider;
     //_serviceStateValueContainerProvider = serviceStateValueContainerProvider;
     _idGenerator = idGenerator;
     _taskCompletionSourceRegistry = taskCompletionSourceRegistry;
     _serviceResolver               = serviceResolver;
     _methodResolver                = methodResolver;
     _eventResolver                 = eventResolver;
     _communicatorProvider          = communicatorProvider;
     _eventPublisherProvider        = eventPublisherProvider;
     _routineCompletionSink         = routineCompletionSink;
     _communicationSettingsProvider = communicationSettingsProvider;
     _defaultSerializer             = defaultSerializerProvider.DefaultSerializer;
     _serializeProvder              = serializeProvder;
     _methodStateStorageProvider    = methodStateStorageProvider;
     _valueContainerCopier          = valueContainerCopier;
     _eventSubscriber               = eventSubscriber;
     _taskContinuationClassifier    = taskContinuationClassifier;
 }
コード例 #5
0
 public ProxyMethodExecutor(
     ITransitionScope transitionScope,
     IMethodIdProvider routineMethodIdProvider,
     IEventIdProvider eventIdProvider,
     IUniqueIdGenerator numericIdGenerator,
     IRoutineCompletionNotifier routineCompletionNotifier,
     IEventSubscriber eventSubscriber,
     ICommunicationSettingsProvider communicationSettingsProvider,
     IMethodInvokerFactory methodInvokerFactory,
     ISingleMethodInvoker singleMethodInvoker,
     ISingleEventPublisher singleEventPublisher)
 {
     _transitionScope               = transitionScope;
     _routineMethodIdProvider       = routineMethodIdProvider;
     _eventIdProvider               = eventIdProvider;
     _idGenerator                   = numericIdGenerator;
     _routineCompletionNotifier     = routineCompletionNotifier;
     _eventSubscriber               = eventSubscriber;
     _communicationSettingsProvider = communicationSettingsProvider;
     _methodInvokerFactory          = methodInvokerFactory;
     _singleMethodInvoker           = singleMethodInvoker;
     _singleEventPublisher          = singleEventPublisher;
 }