private static void SetupResourceFactory(IGrainActivationContext context, string stateName, TransactionQueue <TState> queue) { // Add resources factory to the grain context context.RegisterResourceFactory <ITransactionalResource>(stateName, () => new TransactionalResource <TState>(queue)); // Add tm factory to the grain context context.RegisterResourceFactory <ITransactionManager>(stateName, () => new TransactionManager <TState>(queue)); }
internal void SetupResourceFactory(IGrainActivationContext context, string stateName, TransactionQueue <TState> queue) { // Add resources factory to the grain context context.RegisterResourceFactory <ITransactionalResource>(stateName, () => new FaultInjectionTransactionalResource <TState>(this.faultInjector, FaultInjectionControl, new TransactionalResource <TState>(queue), context, logger, grainRuntime)); // Add tm factory to the grain context context.RegisterResourceFactory <ITransactionManager>(stateName, () => new FaultInjectionTransactionManager <TState>(this.faultInjector, FaultInjectionControl, new TransactionManager <TState>(queue), context, logger, grainRuntime)); }