public MaxStateTransactionalGrain(ITransactionalStateFactory stateFactory, ILoggerFactory loggerFactory) : base(Enumerable.Range(0, TransactionTestConstants.MaxCoordinatedTransactions) .Select(i => stateFactory.Create <GrainData>(new TransactionalStateAttribute($"data{i}", TransactionTestConstants.TransactionStore))) .ToArray(), loggerFactory) { }
public TransactionalIndexedState( IServiceProvider sp, IIndexedStateConfiguration config, IGrainActivationContext context, ITransactionalStateFactory transactionalStateFactory ) : base(sp, config, context) { var transactionalStateConfig = new IndexingTransactionalStateConfiguration(config.StateName, config.StorageName); this.transactionalState = transactionalStateFactory.Create <IndexedGrainStateWrapper <TGrainState> >(transactionalStateConfig); }
private object Create(IGrainActivationContext context, MethodInfo genericCreate, object[] args) { ITransactionalStateFactory factory = context.ActivationServices.GetRequiredService <ITransactionalStateFactory>(); return(genericCreate.Invoke(factory, args)); }