Orleans.Streams Namespace

Classes

AggregatedQueueFlowController

A IQueueFlowController which aggregates multiple other IQueueFlowController values.

AsyncBatchObservableExtensions

Extension methods for IAsyncBatchObservable<T>.

AsyncObservableExtensions

Extension methods for IAsyncObservable<T>.

BatchContainerBatch

A batch of batch containers, that if configured (see StreamPullingAgentOptions), will be the data pulled by the PersistenStreamPullingAgent from it's underlying cache

CacheFullException

Indicates that the queue message cache is full.

ClusterClientEventHubStreamConfigurator
ClusterClientPersistentStreamConfigurator
ClusterClientPersistentStreamConfiguratorExtensions
ClusterClientSqsStreamConfigurator
ConstructorStreamNamespacePredicateProvider

Stream namespace predicate provider which supports objects which can be constructed and optionally accept a string as a constructor argument.

DataNotAvailableException

Exception indicates that the requested data is not available.

DefaultStreamIdMapper

The default IStreamIdMapper implementation.

DefaultStreamNamespacePredicateProvider

Default implementation of IStreamNamespacePredicateProvider for internally supported stream predicates.

DeploymentBasedQueueBalancer

DeploymentBasedQueueBalancer is a stream queue balancer that uses deployment information to help balance queue distribution. DeploymentBasedQueueBalancer uses the deployment configuration to determine how many silos to expect and uses a silo status oracle to determine which of the silos are available. With this information it tries to balance the queues using a best fit resource balancing algorithm.

FaultedSubscriptionException

This exception indicates that an error has occurred on a stream subscription that has placed the subscription into a faulted state. Work on faulted subscriptions should be abandoned.

HashRingBasedPartitionedStreamQueueMapper

Queue mapper that tracks which partition was mapped to which QueueId

HashRingBasedStreamQueueMapper

A IConsistentRingStreamQueueMapper and hence IStreamQueueMapper which balances queues by mapping them onto a hash ring consisting of silos.

ImplicitConsumerGrainExtensions

Extension methods for grains implicitly subscribed to streams.

LeaseBasedQueueBalancer

LeaseBasedQueueBalancer. This balancer supports queue balancing in cluster auto-scale scenarios, unexpected server failure scenarios, and tries to support ideal distribution as much as possible.

LoadShedQueueFlowController

Flow control triggered by silo load shedding. This is an all-or-nothing trigger which will request MaxValue, or 0.

NoOpStreamDeliveryFailureHandler

IStreamFailureHandler which does nothing in response to failures.

PersistentStreamProviderConfig
PersistentStreamStorageConfigurationValidator
ProviderStartException

Exception thrown whenever a provider has failed to be started.

PubSubSubscriptionState
QueueAdapterConstants

Constants for queue adapters.

QueueAdapterExtensions

Extension methods for IQueueAdapter

QueueBalancerBase

Base class for StreamQueueBalancer

QueueCacheMissException

Exception indicates that the requested message is not in the queue cache.

QueueId

Identifier of a durable queue. Used by Orleans streaming extensions.

RegexStreamNamespacePredicate

IStreamNamespacePredicate implementation allowing to filter stream namespaces by regular expression.

SequentialItem<T>

Represents a stream item within a sequence.

SiloEventHubStreamBuilderExtensions
SiloEventHubStreamConfigurator
SiloPersistentStreamConfigurator
SiloPersistentStreamConfiguratorExtension
SiloPersistentStreamConfiguratorExtensions
SiloRecoverableStreamConfigurator
SiloRecoverableStreamConfiguratorExtensions
SiloSqsStreamConfigurator
StreamEventDeliveryFailureException

This exception indicates that a stream event was not successfully delivered to the consumer.

StreamIdentity

Stream identity contains the public stream information use to uniquely identify a stream. Stream identities are only unique per stream provider.

StreamPosition

Stream position uniquely identifies the position of an event in a stream. If acquiring a stream position for a batch of events, the stream position will be of the first event in the batch.

StreamProviderExtensions

Extensions for IStreamProvider.

StreamProviderManagerExtensions
StreamQueueBalancerType

Built-in stream queue balancer type which is supported natively in orleans

StreamSequenceToken

Handle representing stream sequence number/token. Consumer may subscribe to the stream while specifying the start of the subscription sequence token. That means that the stream infrastructure will deliver stream events starting from this sequence token.

StreamSequenceTokenUtilities

Utilities for comparing StreamSequenceToken instances.

StreamSubscriptionHandle<T>

Handle representing this subscription. Consumer may serialize and store the handle in order to unsubscribe later, for example in another activation on this grain.

StreamSubscriptionHandleExtensions

Extension methods for StreamSubscriptionHandle<T>.

StreamSubscriptionHandlerFactory

Factory for creating StreamSubscriptionHandle<T> instances.

Interfaces

IAsyncBatchObservable<T>

This interface generalizes the IAsyncObserver interface to allow production and consumption of batches of items.

Note that this interface is implemented by item consumers and invoked (used) by item producers. This means that the consumer endpoint of a stream implements this interface.

IAsyncBatchObserver<T>

This interface generalizes the IAsyncObserver interface to allow production and consumption of batches of items.

Note that this interface is implemented by item consumers and invoked (used) by item producers. This means that the consumer endpoint of a stream implements this interface.

IAsyncBatchProducer<T>

This interface generalizes the IAsyncObserver interface to allow production of batches of items.

Note that this interface is invoked (used) by item producers.

IAsyncObservable<T>

This interface generalizes the standard .NET IObserveable interface to allow asynchronous consumption of items. Asynchronous here means that the consumer can process items asynchronously and signal item completion to the producer by completing the returned Task.

Note that this interface is invoked (used) by item consumers and implemented by item producers. This means that the producer endpoint of a stream implements this interface.

IAsyncObserver<T>

This interface generalizes the standard .NET IObserver interface to allow asynchronous production of items.

Note that this interface is implemented by item consumers and invoked (used) by item producers. This means that the consumer endpoint of a stream implements this interface.

IAsyncStream

This interface represents an object that serves as a distributed rendezvous between producers and consumers. It is similar to a Reactive Framework Subject and implements IObserver nor IObservable interfaces.

IAsyncStream<T>

This interface represents an object that serves as a distributed rendezvous between producers and consumers. It is similar to a Reactive Framework Subject and implements IObserver nor IObservable interfaces.

IBatchContainer

Each queue message is allowed to be a heterogeneous, ordered set of events. IBatchContainer contains these events and allows users to query the batch for a specific type of event.

IBatchContainerBatch

A batch of queue messages (see IBatchContainer for description of batch contents)

IClusterClientPersistentStreamConfigurator
IConsistentRingStreamQueueMapper

The stream queue mapper is responsible for mapping ring ranges from the load balancing ring provider to stream queues. Implementation must be thread safe.

IDeploymentConfiguration

Interface for accessing the deployment configuration.

IQueueAdapter

Stream queue storage adapter. This is an abstraction layer that hides the implementation details of the underlying queuing system.

IQueueAdapterCache

Functionality for creating an IQueueCache for a given queue.

IQueueAdapterFactory

Adapter factory. This should create an adapter from the stream provider configuration

IQueueAdapterReceiver

Receives batches of messages from a single partition of a message queue.

IQueueCache
IQueueCacheCursor

Enumerates the messages in a stream.

IQueueDataAdapter<TQueueMessage>

Converts event data to queue message

IQueueDataAdapter<TQueueMessage,TMessageBatch>

Converts event data to and from queue message

IQueueFlowController

Functionality for controlling the flow of retrieved queue items.

ISiloPersistentStreamConfigurator
ISiloRecoverableStreamConfigurator
IStreamFailureHandler

Functionality for handling stream failures.

IStreamIdentity

Uniquely identifies a stream.

IStreamIdMapper

Common interface for components that map a StreamId to a Key

IStreamNamespacePredicate

Stream namespace predicate used for filtering implicit subscriptions using ImplicitStreamSubscriptionAttribute.

IStreamNamespacePredicateProvider

Converts predicate pattern strings to IStreamNamespacePredicate instances.

IStreamProvider

Functionality for providing streams to consumers and producers.

IStreamProviderImpl
IStreamProviderManager
IStreamPubSub
IStreamQueueBalanceListener

The stream queue balancer listener receives notifications from a stream queue balancer (IStreamQueueBalancer) indicating that the balance of queues has changed. It should be implemented by components interested in stream queue load balancing. When change notification is received, listener should request updated list of queues from the queue balancer.

IStreamQueueBalancer

The stream queue balancer is responsible for load balancing queues across all other related queue balancers. It notifies any listeners (IStreamQueueBalanceListener) of changes to the distribution of queues. Method GetMyQueues, SubscribeToQueueDistributionChangeEvents, and UnSubscribeFromQueueDistributionChangeEvents will likely be called in the IStreamQueueBalanceListener's thread so they need to be thread safe

IStreamQueueCheckpointer<TCheckpoint>

Functionality for checkpointing a stream.

IStreamQueueCheckpointerFactory

Factory for creating IStreamQueueCheckpointer<TCheckpoint> instances.

IStreamQueueMapper

The stream queue mapper returns a list of all queues and is also responsible for mapping streams to queues. Implementation must be thread safe.

Enums

PubSubSubscriptionState.SubscriptionStates
StreamProviderDirection

Identifies whether a stream provider is read-only, read-write, or write-only.

StreamPubSubType

Identifies the publish/subscribe system types which stream providers can use.

Delegates

StreamFilterPredicate