public override Task OnActivateAsync() { base.OnActivateAsync(); StreamConsumer = new TransactionalStreamConsumer(GetStreamProvider(StreamProviderNamespace), TearDown); StreamSender = new StreamMessageSender <TOut>(GetStreamProvider(StreamProviderNamespace), this.GetPrimaryKey()); RegisterMessages(); return(TaskDone.Done); }
public virtual async Task TearDown() { if (StreamConsumer != null) { await StreamConsumer.TearDown(); StreamConsumer = null; } if (StreamSender != null) { await StreamSender.TearDown(); StreamSender = null; } DeactivateOnIdle(); }
public async Task TestRemove() { var distributedCollection = GetRandomDistributedCollection <int>(); await distributedCollection.SetNumberOfNodes(4); var l = Enumerable.Range(0, 20000).ToList(); var references = await distributedCollection.BatchAdd(l); var consumer = new TransactionalStreamConsumer(_provider); await consumer.SetInput(await distributedCollection.GetOutputStreams()); var tid = await distributedCollection.EnumerateToSubscribers(); await consumer.TransactionComplete(tid); var deleteValue = (int)await distributedCollection.ExecuteSync(x => x, references.First()); Assert.IsTrue(await distributedCollection.Contains(deleteValue)); await distributedCollection.Remove(references.First()); Assert.IsFalse(await distributedCollection.Contains(deleteValue)); }