Skip to content

IStreamPubSub Methods

Provides the stream provider pub/sub control plane for registering producers and consumers and querying subscription state.

ConsumerCount(QualifiedStreamId)

abstract
View source
public abstract Task<int> ConsumerCount(QualifiedStreamId streamId)
Gets the number of registered consumers for a stream.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.

Returns

The number of registered consumers.

ConsumerCount(QualifiedStreamId, CancellationToken)

virtual
View source
public virtual Task<int> ConsumerCount(QualifiedStreamId streamId, CancellationToken cancellationToken)
Gets the number of consumers registered for a stream.

Parameters

streamIdQualifiedStreamId
The stream identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

The number of consumers.

CreateSubscriptionId(QualifiedStreamId, GrainId)

abstract
public abstract GuidId CreateSubscriptionId(QualifiedStreamId streamId, GrainId streamConsumer)
Creates a subscription identifier for a stream consumer.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.
streamConsumerGrainId
The identifier of the consumer.

Returns

The subscription identifier.

FaultSubscription(QualifiedStreamId, GuidId)

abstract
View source
public abstract Task<bool> FaultSubscription(QualifiedStreamId streamId, GuidId subscriptionId)
Marks a subscription as faulted.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.
subscriptionIdGuidId
The subscription identifier.

Returns

true when the subscription is handled by this pub/sub implementation; otherwise, false.

FaultSubscription(QualifiedStreamId, GuidId, CancellationToken)

virtual
View source
public virtual Task<bool> FaultSubscription(QualifiedStreamId streamId, GuidId subscriptionId, CancellationToken cancellationToken)
Marks a subscription as faulted.

Parameters

streamIdQualifiedStreamId
The stream identifier.
subscriptionIdGuidId
The subscription identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

true if the subscription was faulted; otherwise, false.

GetAllSubscriptions(QualifiedStreamId, GrainId)

abstract
View source
public abstract Task<List<StreamSubscription>> GetAllSubscriptions(QualifiedStreamId streamId, GrainId streamConsumer = default(GrainId))
Gets active subscriptions for a stream, optionally restricted to a specific consumer.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.
streamConsumerGrainId
The identifier of the consumer whose subscriptions are returned, or the default value to return all subscriptions.

Returns

The matching active subscriptions.

GetAllSubscriptions(QualifiedStreamId, GrainId, CancellationToken)

virtual
View source
public virtual Task<List<StreamSubscription>> GetAllSubscriptions(QualifiedStreamId streamId, GrainId streamConsumer, CancellationToken cancellationToken)
Gets the subscriptions for a stream.

Parameters

streamIdQualifiedStreamId
The stream identifier.
streamConsumerGrainId
The optional consumer identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

The stream subscriptions.

ProducerCount(QualifiedStreamId)

abstract
View source
public abstract Task<int> ProducerCount(QualifiedStreamId streamId)
Gets the number of registered producers for a stream.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.

Returns

The number of registered producers.

ProducerCount(QualifiedStreamId, CancellationToken)

virtual
View source
public virtual Task<int> ProducerCount(QualifiedStreamId streamId, CancellationToken cancellationToken)
Gets the number of producers registered for a stream.

Parameters

streamIdQualifiedStreamId
The stream identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

The number of producers.

RegisterConsumer(GuidId, QualifiedStreamId, GrainId, string?)

abstract
View source
public abstract Task RegisterConsumer(GuidId subscriptionId, QualifiedStreamId streamId, GrainId streamConsumer, string? filterData)
Registers a consumer subscription for a stream.

Parameters

subscriptionIdGuidId
The subscription identifier.
streamIdQualifiedStreamId
The qualified stream identifier.
streamConsumerGrainId
The identifier of the consumer.
filterDatastring?
The serialized filter data associated with the subscription.

Returns

A task which represents the operation.

RegisterConsumer(GuidId, QualifiedStreamId, GrainId, string?, CancellationToken)

virtual
View source
public virtual Task RegisterConsumer(GuidId subscriptionId, QualifiedStreamId streamId, GrainId streamConsumer, string? filterData, CancellationToken cancellationToken)
Registers a stream consumer.

Parameters

subscriptionIdGuidId
The subscription identifier.
streamIdQualifiedStreamId
The stream identifier.
streamConsumerGrainId
The consumer identifier.
filterDatastring?
The optional filter data.
cancellationTokenCancellationToken
The cancellation token.

Returns

A System.Threading.Tasks.Task representing the operation.

RegisterProducer(QualifiedStreamId, GrainId)

abstract
View source
public abstract Task<ISet<PubSubSubscriptionState>> RegisterProducer(QualifiedStreamId streamId, GrainId streamProducer)
Registers a producer for a stream and returns the active consumer registrations which the producer should connect to.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.
streamProducerGrainId
The identifier of the producer.

Returns

The active consumer registrations for the stream.

RegisterProducer(QualifiedStreamId, GrainId, CancellationToken)

virtual
View source
public virtual Task<ISet<PubSubSubscriptionState>> RegisterProducer(QualifiedStreamId streamId, GrainId streamProducer, CancellationToken cancellationToken)
Registers a stream producer.

Parameters

streamIdQualifiedStreamId
The stream identifier.
streamProducerGrainId
The producer identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

The set of stream subscriptions.

UnregisterConsumer(GuidId, QualifiedStreamId)

abstract
View source
public abstract Task UnregisterConsumer(GuidId subscriptionId, QualifiedStreamId streamId)
Unregisters a consumer subscription from a stream.

Parameters

subscriptionIdGuidId
The subscription identifier.
streamIdQualifiedStreamId
The qualified stream identifier.

Returns

A task which represents the operation.

UnregisterConsumer(GuidId, QualifiedStreamId, CancellationToken)

virtual
View source
public virtual Task UnregisterConsumer(GuidId subscriptionId, QualifiedStreamId streamId, CancellationToken cancellationToken)
Unregisters a stream consumer.

Parameters

subscriptionIdGuidId
The subscription identifier.
streamIdQualifiedStreamId
The stream identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

A System.Threading.Tasks.Task representing the operation.

UnregisterProducer(QualifiedStreamId, GrainId)

abstract
View source
public abstract Task UnregisterProducer(QualifiedStreamId streamId, GrainId streamProducer)
Unregisters a producer from a stream.

Parameters

streamIdQualifiedStreamId
The qualified stream identifier.
streamProducerGrainId
The identifier of the producer.

Returns

A task which represents the operation.

UnregisterProducer(QualifiedStreamId, GrainId, CancellationToken)

virtual
View source
public virtual Task UnregisterProducer(QualifiedStreamId streamId, GrainId streamProducer, CancellationToken cancellationToken)
Unregisters a stream producer.

Parameters

streamIdQualifiedStreamId
The stream identifier.
streamProducerGrainId
The producer identifier.
cancellationTokenCancellationToken
The cancellation token.

Returns

A System.Threading.Tasks.Task representing the operation.