internal SimpleMessageStreamProducer( StreamImpl <T> stream, string streamProviderName, IStreamProviderRuntime providerUtilities, bool fireAndForgetDelivery, bool optimizeForImmutableData, IStreamPubSub pubSub, bool isRewindable, SerializationManager serializationManager, ILogger <SimpleMessageStreamProducer <T> > logger) { this.stream = stream; this.streamProviderName = streamProviderName; providerRuntime = providerUtilities; this.pubSub = pubSub; this.serializationManager = serializationManager; connectedToRendezvous = false; this.fireAndForgetDelivery = fireAndForgetDelivery; this.optimizeForImmutableData = optimizeForImmutableData; IsRewindable = isRewindable; isDisposed = false; initLock = new AsyncLock(); this.logger = logger; ConnectToRendezvous().Ignore(); }
internal SimpleMessageStreamProducer(StreamImpl <T> stream, string streamProviderName, IStreamProviderRuntime providerUtilities, bool fireAndForgetDelivery, bool isRewindable) { this.stream = stream; this.streamProviderName = streamProviderName; providerRuntime = providerUtilities; pubSub = providerRuntime.PubSub(StreamPubSubType.GrainBased); connectedToRendezvous = false; this.fireAndForgetDelivery = fireAndForgetDelivery; IsRewindable = isRewindable; isDisposed = false; logger = providerRuntime.GetLogger(GetType().Name); initLock = new AsyncLock(); ConnectToRendezvous().Ignore(); }