private async Task <ISet <PubSubSubscriptionState> > RegisterProducer()
        {
            (myExtension, myGrainReference) = providerRuntime.BindExtension <SimpleMessageStreamProducerExtension, IStreamProducerExtension>(
                () => new SimpleMessageStreamProducerExtension(providerRuntime, pubSub, this.logger, fireAndForgetDelivery, optimizeForImmutableData));

            myExtension.AddStream(stream.InternalStreamId);

            // Notify streamRendezvous about new stream streamProducer. Retreave the list of RemoteSubscribers.
            return(await pubSub.RegisterProducer(stream.InternalStreamId, myGrainReference));
        }
예제 #2
0
        private async Task <ISet <PubSubSubscriptionState> > RegisterProducer()
        {
            var tup = await providerRuntime.BindExtension <SimpleMessageStreamProducerExtension, IStreamProducerExtension>(
                () => new SimpleMessageStreamProducerExtension(providerRuntime, fireAndForgetDelivery));

            myExtension      = tup.Item1;
            myGrainReference = tup.Item2;

            myExtension.AddStream(stream.StreamId);

            // Notify streamRendezvous about new stream streamProducer. Retreave the list of RemoteSubscribers.
            return(await pubSub.RegisterProducer(stream.StreamId, streamProviderName, myGrainReference));
        }