예제 #1
0
 public TransitionMonitorFactory(
     ITaskContinuationTracker taskContinuationTracker,
     ITaskContinuationClassifier taskContinuationClassifier,
     IIntrinsicFlowController intrinsicFlowController,
     IAsyncStateMachineMetadataProvider asyncStateMachineMetadataProvider)
 {
     _taskContinuationTracker           = taskContinuationTracker;
     _taskContinuationClassifier        = taskContinuationClassifier;
     _intrinsicFlowController           = intrinsicFlowController;
     _asyncStateMachineMetadataProvider = asyncStateMachineMetadataProvider;
 }
 public IntrinsicFlowController(
     ITaskContinuationClassifier taskContinuationClassifier,
     IAsyncStateMachineMetadataProvider asyncStateMachineMetadataProvider,
     IUniqueIdGenerator numericIdGenerator,
     IRoutineMethodIdProvider routineMethodIdProvider)
 {
     _taskContinuationClassifier        = taskContinuationClassifier;
     _asyncStateMachineMetadataProvider = asyncStateMachineMetadataProvider;
     _numericIdGenerator      = numericIdGenerator;
     _routineMethodIdProvider = routineMethodIdProvider;
 }
예제 #3
0
 public TransitionMonitor(
     TransitionContext context,
     ITaskContinuationTracker taskContinuationTracker,
     ITaskContinuationClassifier taskContinuationClassifier,
     IIntrinsicFlowController intrinsicFlowController,
     IAsyncStateMachineMetadataProvider asyncStateMachineMetadataProvider)
 {
     Context = context;
     _taskContinuationTracker           = taskContinuationTracker;
     _taskContinuationClassifier        = taskContinuationClassifier;
     _intrinsicFlowController           = intrinsicFlowController;
     _asyncStateMachineMetadataProvider = asyncStateMachineMetadataProvider;
     _onRoutineContinuationSetCallback  = OnRoutineContinuationSet;
 }
예제 #4
0
 public TransitionRunner(
     ITransitionScope transitionScope,
     ITransitionCommitter transitionCommitter,
     IServiceProxyBuilder serviceProxyBuilder,
     IRoutineMethodResolver routineMethodResolver,
     IAsyncStateMachineMetadataProvider asyncStateMachineMetadataProvider,
     IMethodInvokerFactory methodInvokerFactory,
     IServiceStateValueContainerProvider serviceStateValueContainerProvider,
     IntrinsicRoutines intrinsicRoutines,
     INumericIdGenerator idGenerator)
 {
     _transitionScope                    = transitionScope;
     _transitionCommitter                = transitionCommitter;
     _serviceProxyBuilder                = serviceProxyBuilder;
     _routineMethodResolver              = routineMethodResolver;
     _asyncStateMachineMetadataProvider  = asyncStateMachineMetadataProvider;
     _methodInvokerFactory               = methodInvokerFactory;
     _serviceStateValueContainerProvider = serviceStateValueContainerProvider;
     _intrinsicRoutines                  = intrinsicRoutines;
     _idGenerator = idGenerator;
 }
예제 #5
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;
 }
예제 #6
0
 public TransitionRunner(
     ITransitionScope transitionScope,
     ITransitionCommitter transitionCommitter,
     IServiceProxyBuilder serviceProxyBuilder,
     IRoutineMethodResolver routineMethodResolver,
     IAsyncStateMachineMetadataProvider asyncStateMachineMetadataProvider,
     IMethodInvokerFactory methodInvokerFactory,
     //IServiceStateValueContainerProvider serviceStateValueContainerProvider,
     IntrinsicRoutines intrinsicRoutines,
     IUniqueIdGenerator idGenerator,
     ITaskCompletionSourceRegistry taskCompletionSourceRegistry)
 {
     _transitionScope                   = transitionScope;
     _transitionCommitter               = transitionCommitter;
     _serviceProxyBuilder               = serviceProxyBuilder;
     _routineMethodResolver             = routineMethodResolver;
     _asyncStateMachineMetadataProvider = asyncStateMachineMetadataProvider;
     _methodInvokerFactory              = methodInvokerFactory;
     //_serviceStateValueContainerProvider = serviceStateValueContainerProvider;
     _intrinsicRoutines            = intrinsicRoutines;
     _idGenerator                  = idGenerator;
     _taskCompletionSourceRegistry = taskCompletionSourceRegistry;
 }
예제 #7
0
 public static AsyncStateMachineMetadata GetMetadata(this IAsyncStateMachineMetadataProvider provider, MethodInfo methodInfo)
 => provider.GetMetadata(MethodInfoToStateMachineTypeConverter.GetStateMachineType(methodInfo));