public AzureFunctionsFabric( ISerializerFactorySelector serializerFactorySelector, INumericIdGenerator idGenerator, ITransitionRunner transitionRunner, IAzureWebJobsEnviromentalSettings azureWebJobsEnviromentalSettings, ICloudStorageAccountFactory cloudStorageAccountFactory, AzureFunctionsFabricSettings settings, IServiceProxyBuilder serviceProxyBuilder, IRoutineMethodResolver routineMethodResolver, IMethodInvokerFactory methodInvokerFactory, IServiceRegistry serviceRegistry) { _transitionRunner = transitionRunner; _idGenerator = idGenerator; _settings = settings; _serviceProxyBuilder = serviceProxyBuilder; _routineMethodResolver = routineMethodResolver; _methodInvokerFactory = methodInvokerFactory; _serviceRegistry = serviceRegistry; #warning Need configurable serializer // Hard-code this for now. _defaultSerializer = serializerFactorySelector.Select("dasyncjson").Create(); _storageAccountConnectionString = azureWebJobsEnviromentalSettings.DefaultStorageConnectionString; _storageAccount = cloudStorageAccountFactory.Create(_storageAccountConnectionString); //#warning make sure that site name is alpha-numeric and does not start with a number // var prefix = azureWebJobsEnviromentalSettings.WebSiteName.ToLowerInvariant(); var prefix = ""; _routinesTable = _storageAccount.TableClient.GetTableReference(prefix + "routines"); _servicesTable = _storageAccount.TableClient.GetTableReference(prefix + "services"); }
public HttpRequestHandler( ICommunicationModelProvider communicationModelProvider, IDomainServiceProvider domainServiceProvider, IRoutineMethodResolver routineMethodResolver, IMethodInvokerFactory methodInvokerFactory, ISerializerFactorySelector serializerFactorySelector, IEnumerable <IEventDispatcher> eventDispatchers, IUniqueIdGenerator idGenerator, ITransitionCommitter transitionCommitter, IRoutineCompletionNotifier routineCompletionNotifier, IEnumerable <IHttpIntentPreprocessor> intentPreprocessors, IEnumerable <IRoutineTransitionAction> transitionActions, ITransitionUserContext transitionUserContext) { _communicationModelProvider = communicationModelProvider; _domainServiceProvider = domainServiceProvider; _routineMethodResolver = routineMethodResolver; _methodInvokerFactory = methodInvokerFactory; _eventDispatcher = eventDispatchers.FirstOrDefault(); _idGenerator = idGenerator; _transitionCommitter = transitionCommitter; _routineCompletionNotifier = routineCompletionNotifier; _intentPreprocessor = new AggregateHttpIntentPreprocessor(intentPreprocessors); _transitionActions = transitionActions; _transitionUserContext = transitionUserContext; _dasyncJsonSerializer = serializerFactorySelector.Select("dasync+json").Create(); JsonSettings.Converters.Add(new EntityProjectionConverter(communicationModelProvider.Model)); }
public TransitionCommitter( ICommunicationModelProvider communicationModelProvider, IPlatformHttpClientProvider platformHttpClientProvider, IRoutineCompletionSink routineCompletionSink, IEventDispatcher eventDispatcher, IRoutineMethodResolver routineMethodResolver, IDomainServiceProvider domainServiceProvider, IMethodInvokerFactory methodInvokerFactory, IEnumerable <IRoutineTransitionAction> transitionActions, ITransitionUserContext transitionUserContext) { _communicationModelProvider = communicationModelProvider; _platformHttpClientProvider = platformHttpClientProvider; _routineCompletionSink = routineCompletionSink; _eventDispatcher = eventDispatcher; _routineMethodResolver = routineMethodResolver; _domainServiceProvider = domainServiceProvider; _methodInvokerFactory = methodInvokerFactory; _transitionActions = transitionActions; _transitionUserContext = transitionUserContext; }
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; }
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; }