internal IndexWorkflowQueueGrainService(SiloIndexManager siloIndexManager, Type grainInterfaceType, int queueSequenceNumber, bool isDefinedAsFaultTolerantGrain)
     : base(IndexWorkflowQueueBase.CreateIndexWorkflowQueueGrainReference(siloIndexManager, grainInterfaceType, queueSequenceNumber, siloIndexManager.SiloAddress).GrainIdentity,
            siloIndexManager.Silo, siloIndexManager.LoggerFactory)
 {
     _base = new IndexWorkflowQueueBase(siloIndexManager, grainInterfaceType, queueSequenceNumber, siloIndexManager.SiloAddress, isDefinedAsFaultTolerantGrain,
                                        () => base.GetGrainReference()); // lazy is needed because the runtime isn't attached until Registered
 }
Пример #2
0
 private IIndexWorkflowQueue InitIndexWorkflowQueue()
 => __workflowQueue = _lazyParent.Value.IsGrainService
             ? _siloIndexManager.GetGrainService <IIndexWorkflowQueue>(IndexWorkflowQueueBase.CreateIndexWorkflowQueueGrainReference(_siloIndexManager, _grainInterfaceType, _queueSeqNum, _silo))
             : _siloIndexManager.GrainFactory.GetGrain <IIndexWorkflowQueue>(IndexWorkflowQueueBase.CreateIndexWorkflowQueuePrimaryKey(_grainInterfaceType, _queueSeqNum));