# Microsoft.Orleans.Streaming

10.0.0 | net10.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Streaming)

## Orleans

- [ClientStreamingExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.clientstreamingextensions/) - Extension methods for accessing stream providers from a client.
- [GrainStreamingExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.grainstreamingextensions/) - Extension methods for accessing stream providers from a [Grain](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.grain/) or [IGrainBase](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.igrainbase/) implementation.
- [ImplicitStreamSubscriptionAttribute](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.implicitstreamsubscriptionattribute/) - The [Orleans.ImplicitStreamSubscription] attribute is used to mark grains as implicit stream subscriptions.
- [RegexImplicitStreamSubscriptionAttribute](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.regeximplicitstreamsubscriptionattribute/) - The [Orleans.RegexImplicitStreamSubscription] attribute is used to mark grains as implicit stream subscriptions by filtering stream namespaces to subscribe using a regular expression.

## Orleans.Configuration

- [DeploymentBasedQueueBalancerOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.deploymentbasedqueuebalanceroptions/) - Options for [DeploymentBasedQueueBalancer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.deploymentbasedqueuebalancer/).
- [HashRingStreamQueueMapperOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.hashringstreamqueuemapperoptions/) - Options for [HashRingBasedStreamQueueMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.hashringbasedstreamqueuemapper/).
- [LeaseBasedQueueBalancerOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.leasebasedqueuebalanceroptions/) - Config for LeaseBasedQueueBalancer. User need to configure this option in order to use LeaseBasedQueueBalancer in the stream provider. Per stream provider options can be configured as named options using the same name as the provider.
- [RunState](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streamlifecycleoptions.runstate/) - Identifies well-known points in the lifecycle of the streaming system.
- [SimpleQueueCacheOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.simplequeuecacheoptions/) - Configuration options for the simple queue cache.
- [SimpleQueueCacheOptionsValidator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.simplequeuecacheoptionsvalidator/) - Validates [SimpleQueueCacheOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.simplequeuecacheoptions/).
- [StreamCacheEvictionOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streamcacheevictionoptions/) - Configuration options for stream cache eviction.
- [StreamLifecycleOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streamlifecycleoptions/) - Options for managing stream system lifecycle.
- [StreamPubSubOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streampubsuboptions/) - Options for configuring stream pub/sub.
- [StreamPullingAgentOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streampullingagentoptions/) - Options for stream pulling agents.
- [StreamStatisticOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streamstatisticoptions/) - Configuration options for stream statistics.

## Orleans.Hosting

- [ClientBuilderStreamingExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.clientbuilderstreamingextensions/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [ClusterClientMemoryStreamConfigurator&lt;TSerializer&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.clusterclientmemorystreamconfigurator-1/) - Configures memory streams.
- [ClusterClientPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.clusterclientpersistentstreamconfigurator/) - Client-side configuration provider for persistent streams.
- [ClusterClientPersistentStreamConfiguratorExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.clusterclientpersistentstreamconfiguratorextensions/) - Extension methods for [IClusterClientPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.iclusterclientpersistentstreamconfigurator/).
- [IClusterClientMemoryStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.iclusterclientmemorystreamconfigurator/) - Client-specific configuration builder for memory streams.
- [IClusterClientPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.iclusterclientpersistentstreamconfigurator/) - Client-specific configuration builder for persistent stream.
- [IMemoryStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.imemorystreamconfigurator/) - Configuration builder for memory streams.
- [IPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.ipersistentstreamconfigurator/) - Configuration builder for persistent streams.
- [ISiloMemoryStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.isilomemorystreamconfigurator/) - Silo-specific configuration builder for memory streams.
- [ISiloPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.isilopersistentstreamconfigurator/) - Functionality for configuring persistent streams.
- [ISiloRecoverableStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.isilorecoverablestreamconfigurator/) - Silo-specific configuration builder for recoverable streams.
- [MemoryStreamConfiguratorExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.memorystreamconfiguratorextensions/) - Configuration extensions for memory streams.
- [PersistentStreamConfiguratorExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.persistentstreamconfiguratorextensions/) - Extension methods for [IPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.ipersistentstreamconfigurator/).
- [PersistentStreamStorageConfigurationValidator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.persistentstreamstorageconfigurationvalidator/) - Validates [StreamPubSubOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.configuration.streampubsuboptions/).
- [SiloBuilderMemoryStreamExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silobuildermemorystreamextensions/) - [ISiloBuilder](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.hosting.isilobuilder/) extension methods for configuring in-memory streams.
- [SiloBuilderStreamingExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silobuilderstreamingextensions/) - Extension methods for configuring streaming on silos.
- [SiloMemoryStreamConfigurator&lt;TSerializer&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silomemorystreamconfigurator-1/) - Configures memory streams.
- [SiloPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silopersistentstreamconfigurator/) - Configures persistent streams.
- [SiloPersistentStreamConfiguratorExtension](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silopersistentstreamconfiguratorextension/) - Extension methods for [ISiloPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.isilopersistentstreamconfigurator/).
- [SiloPersistentStreamConfiguratorExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silopersistentstreamconfiguratorextensions/) - Extensions for [ISiloPersistentStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.isilopersistentstreamconfigurator/).
- [SiloRecoverableStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silorecoverablestreamconfigurator/) - Configures reliable streams.
- [SiloRecoverableStreamConfiguratorExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.silorecoverablestreamconfiguratorextensions/) - Extension methods for [ISiloRecoverableStreamConfigurator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.isilorecoverablestreamconfigurator/).
- [SimpleGeneratorOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.simplegeneratoroptions/) - Simple generator configuration class. This class is used to configure a generator stream provider to generate streams using the SimpleGenerator
- [StaticClusterDeploymentOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.staticclusterdeploymentoptions/) - Deployment configuration that reads from orleans cluster configuration
- [StreamingServiceCollectionExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.hosting.streamingservicecollectionextensions/) - Extension methods for configuring streaming on silos.

## Orleans.Providers

- [DefaultMemoryMessageBodySerializer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.defaultmemorymessagebodyserializer/) - Default [IMemoryMessageBodySerializer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.imemorymessagebodyserializer/) implementation.
- [IMemoryMessageBodySerializer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.imemorymessagebodyserializer/) - Implementations of this interface are responsible for serializing MemoryMessageBody objects
- [IMemoryStreamQueueGrain](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.imemorystreamqueuegrain/) - Interface for In-memory stream queue grain.
- [MemoryAdapterFactory&lt;TSerializer&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memoryadapterfactory-1/) - Adapter factory for in memory stream provider. This factory acts as the adapter and the adapter factory. The events are stored in an in-memory grain that behaves as an event queue, this provider adapter is primarily used for testing
- [MemoryMessageBody](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorymessagebody/) - Message body used by the in-memory stream provider.
- [MemoryMessageData](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorymessagedata/) - Represents the event sent and received from an In-Memory queue grain.
- [MemoryPooledCache&lt;TSerializer&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorypooledcache-1/) - Pooled cache for memory stream provider
- [MemoryStreamQueueGrain](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.memorystreamqueuegrain/) - Memory stream queue grain. This grain works as a storage queue of event data. Enqueue and Dequeue operations are supported. the max event count sets the max storage limit to the queue.

## Orleans.Providers.Streams.Common

- [BlockPoolMonitorDimensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.blockpoolmonitordimensions/) - Aggregation dimensions for block pool monitors.
- [CachedMessage](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.cachedmessage/) - This is a tightly packed cached structure containing a queue message. It should only contain value types.
- [CachedMessageBlock](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.cachedmessageblock/) - CachedMessageBlock is a block of tightly packed structures containing tracking data for cached messages. This data is tightly packed to reduced GC pressure. The tracking data is used by the queue cache to walk the cache serving ordered queue messages by stream.
- [CachedMessageExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.cachedmessageextensions/) - Extensions for [CachedMessage](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.cachedmessage/).
- [CacheMonitorDimensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.cachemonitordimensions/) - Aggregation dimensions for cache monitor.
- [ChronologicalEvictionStrategy](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.chronologicalevictionstrategy/) - Eviction strategy that evicts data based off of age.
- [DefaultBlockPoolMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.defaultblockpoolmonitor/) - Block pool monitor used as a default option in GeneratorStreamProvider and MemoryStreamProvider.
- [DefaultCacheMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.defaultcachemonitor/) - cache monitor used as a default option in GeneratorStreamprovider and MemoryStreamProvider
- [DefaultQueueAdapterReceiverMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.defaultqueueadapterreceivermonitor/) - Queue adapter receiver monitor used as a default option in GeneratorStreamprovider and MemoryStreamProvider
- [EventSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.eventsequencetoken/) - Stream sequence token that tracks sequence number and event index
- [EventSequenceTokenV2](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.eventsequencetokenv2/) - Stream sequence token that tracks sequence number and event index
- [FixedSizeBuffer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.fixedsizebuffer/) - Manages a contiguous block of memory. Calls purge action with itself as the purge request when it's signaled to purge.
- [IBlockPoolMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.iblockpoolmonitor/) - Monitor track block pool related metrics. Block pool is used in cache system for memory management
- [ICacheDataAdapter](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.icachedataadapter/) - Pooled queue cache stores data in tightly packed structures that need to be transformed to various other formats quickly. Since the data formats may change by queue type and data format, this interface allows adapter developers to build custom data transforms appropriate for the various types of queue data.
- [ICacheMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.icachemonitor/) - Responsible for monitoring cache related metrics.
- [IEvictionStrategy](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.ievictionstrategy/) - Eviction strategy for the PooledQueueCache
- [IObjectPool&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.iobjectpool-1/) - Simple object pool Interface. Objects allocated should be returned to the pool when disposed.
- [IObjectPoolMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.iobjectpoolmonitor/) - Monitor track object pool related metrics
- [IPurgeObservable](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.ipurgeobservable/) - Functionality for purge-related actions.
- [IQueueAdapterReceiverMonitor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.iqueueadapterreceivermonitor/) - Responsible for monitoring receiver performance metrics.
- [ObjectPool&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.objectpool-1/) - Simple object pool that uses a stack to store available objects.
- [ObjectPoolMonitorBridge](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.objectpoolmonitorbridge/) - ObjectPoolMonitor report metrics for ObjectPool, which are based on object count. BlockPoolMonitor report metrics for BlockPool, which are based on memory size. These two monitor converge in orleans cache infrastructure, where ObjectPool is used as block pool to allocate memory, where each object represent a block of memory which has a size. ObjectPoolMonitorBridge is the bridge between these two monitors in cache infrastructure. When ObjectPoolMonitor is reporting a metric, the user configured BlockPoolMonitor will call its counterpart method and reporting metric based on the math: memoryInByte = objectCount*objectSizeInByte
- [PersistentStreamProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.persistentstreamprovider/) - Persistent stream provider that uses an adapter for persistence
- [PersistentStreamProviderCommand](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.persistentstreamprovidercommand/) - Commands which can be handled by the [PersistentStreamProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.persistentstreamprovider/).
- [PooledQueueCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.pooledqueuecache/) - The PooledQueueCache is a cache that is intended to serve as a message cache in an IQueueCache. It is capable of storing large numbers of messages (gigs worth of messages) for extended periods of time (minutes to indefinite), while incurring a minimal performance hit due to garbage collection. This pooled cache allocates memory and never releases it. It keeps freed resources available in pools that remain in application use through the life of the service. This means these objects go to gen2, are compacted, and then stay there. This is relatively cheap, as the only cost they now incur is the cost of checking to see if they should be freed in each collection cycle. Since this cache uses small numbers of large objects with relatively simple object graphs, they are less costly to check then large numbers of smaller objects with more complex object graphs. For performance reasons this cache is designed to more closely align with queue specific data. This is, in part, why, unlike the SimpleQueueCache, this cache does not implement IQueueCache. It is intended to be used in queue specific implementations of IQueueCache.
- [PooledResource&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.pooledresource-1/) - Utility class to support pooled objects by allowing them to track the pool they came from and return to it when disposed
- [ReceiverMonitorDimensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.receivermonitordimensions/) - Aggregation dimensions for receiver monitor.
- [SegmentBuilder](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.segmentbuilder/) - Utility class for encoding data into an ArraySegment.
- [SimpleQueueAdapterCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.simplequeueadaptercache/) - Adapter for simple queue caches.
- [SimpleQueueCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.simplequeuecache/) - A queue cache that keeps items in memory.
- [SimpleQueueCacheCursor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.simplequeuecachecursor/) - Cursor into a simple queue cache.
- [TimePurgePredicate](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.common.timepurgepredicate/) - Determines if data should be purged based off time.

## Orleans.Providers.Streams.Generator

- [GeneratedBatchContainer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.generatedbatchcontainer/) - [IBatchContainer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.ibatchcontainer/) implementation for generated event payloads.
- [GeneratedEvent](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.generatedevent/) - Event use in generated streams
- [GeneratedEventType](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.generatedevent.generatedeventtype/) - Generated event type
- [GeneratorAdapterFactory](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.generatoradapterfactory/) - Adapter factory for stream generator stream provider. This factory acts as the adapter and the adapter factory. It creates receivers that use configurable generator to generate event streams, rather than reading them from storage.
- [GeneratorPooledCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.generatorpooledcache/) - Pooled cache for generator stream provider.
- [IStreamGenerator](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.istreamgenerator/) - Interface of generators used by the GeneratorStreamProvider. Any method of generating events must conform to this interface to be used by the GeneratorStreamProvider.
- [IStreamGeneratorConfig](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.istreamgeneratorconfig/) - Interface of configuration for generators used by the GeneratorStreamProvider. This interface covers the minimal set of information the stream provider needs to configure a generator to generate data. Generators should add any additional configuration information needed to it's implementation of this interface.
- [StreamGeneratorCommand](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.providers.streams.generator.streamgeneratorcommand/) - Stream generator commands

## Orleans.Runtime

- [QualifiedStreamId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.runtime.qualifiedstreamid/) - Provides the base class for value types.
- [StreamId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.runtime.streamid/) - Identifies a Stream within a provider

## Orleans.Runtime.Providers

- [IMessageDeliveryBackoffProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.runtime.providers.imessagedeliverybackoffprovider/) - Functionality for determining how long the `Orleans.Streams.IPersistentStreamPullingAgent` will wait between successive attempts to deliver a message.
- [IQueueReaderBackoffProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.runtime.providers.iqueuereaderbackoffprovider/) - Functionality for determining how long the `Orleans.Streams.IPersistentStreamPullingAgent` will wait between successive attempts to read a message from a queue.

## Orleans.Streaming.Diagnostics

- [BalancerChanged](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.balancerchanged/) - Event payload for when queue ownership changes after rebalancing completes.
- [ConsumerCursorDrained](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.consumercursordrained/) - Event payload for when a consumer cursor is drained and no more currently available work remains.
- [ItemDelivered](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.itemdelivered/) - Event payload for when an individual item from a stream batch is delivered to a consumer.
- [MessageDelivered](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.messagedelivered/) - Event payload for when a stream message is delivered to a consumer.
- [ProducerRegistered](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.producerregistered/) - Event payload for when a producer is durably registered in pubsub state for a stream.
- [ProducerUnregistered](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.producerunregistered/) - Event payload for when a producer is durably removed from pubsub state for a stream.
- [StreamInactive](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.streaminactive/) - Event payload for when a stream becomes inactive due to no activity.
- [StreamingEvent](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.streamingevent/) - The base class used for streaming diagnostic events.
- [StreamingEvents](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents/) - Provides the diagnostic listener and event payload types for Orleans streaming events.
- [SubscriptionAdded](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.subscriptionadded/) - Event payload for when a stream subscription is added.
- [SubscriptionAttached](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.subscriptionattached/) - Event payload for when a stream subscription is attached to a pulling agent and ready to receive data.
- [SubscriptionDetached](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.subscriptiondetached/) - Event payload for when a stream subscription is detached from a pulling agent.
- [SubscriptionRegistered](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.subscriptionregistered/) - Event payload for when a stream subscription is durably registered in pubsub state.
- [SubscriptionRemoved](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.subscriptionremoved/) - Event payload for when a stream subscription is removed.
- [SubscriptionUnregistered](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streaming.diagnostics.streamingevents.subscriptionunregistered/) - Event payload for when a stream subscription is durably removed from pubsub state.

## Orleans.Streams

- [AggregatedQueueFlowController](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.aggregatedqueueflowcontroller/) - A [IQueueFlowController](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueflowcontroller/) which aggregates multiple other [IQueueFlowController](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueflowcontroller/) values.
- [AsyncBatchObservableExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.asyncbatchobservableextensions/) - Extension methods for `Orleans.Streams.IAsyncBatchObservable-1`.
- [AsyncObservableExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.asyncobservableextensions/) - Extension methods for `Orleans.Streams.IAsyncObservable-1`.
- [BatchContainerBatch](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.cachefullexception/) - Indicates that the queue message cache is full.
- [ConstructorStreamNamespacePredicateProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.constructorstreamnamespacepredicateprovider/) - Stream namespace predicate provider which supports objects which can be constructed and optionally accept a string as a constructor argument.
- [DataNotAvailableException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.datanotavailableexception/) - Exception indicates that the requested data is not available.
- [DefaultStreamIdMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.defaultstreamidmapper/) - The default [IStreamIdMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamidmapper/) implementation.
- [DefaultStreamNamespacePredicateProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.defaultstreamnamespacepredicateprovider/) - Default implementation of [IStreamNamespacePredicateProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamnamespacepredicateprovider/) for internally supported stream predicates.
- [DeploymentBasedQueueBalancer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.hashringbasedpartitionedstreamqueuemapper/) - Queue mapper that tracks which partition was mapped to which QueueId
- [HashRingBasedStreamQueueMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.hashringbasedstreamqueuemapper/) - A [IConsistentRingStreamQueueMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iconsistentringstreamqueuemapper/) and hence [IStreamQueueMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamqueuemapper/) which balances queues by mapping them onto a hash ring consisting of silos.
- [IAsyncBatchObservable&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncbatchobservable-1/) - 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&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncbatchobserver-1/) - 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&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncbatchproducer-1/) - This interface generalizes the IAsyncObserver interface to allow production of batches of items. Note that this interface is invoked (used) by item producers.
- [IAsyncObservable&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncobservable-1/) - 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&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncobserver-1/) - 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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncstream/) - This interface represents an object that serves as a distributed rendezvous between producers and consumers. It is similar to a Reactive Framework ```csharp Subject ``` and implements ```csharp IObserver ``` nor ```csharp IObservable ``` interfaces.
- [IAsyncStream&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iasyncstream-1/) - This interface represents an object that serves as a distributed rendezvous between producers and consumers. It is similar to a Reactive Framework ```csharp Subject ``` and implements ```csharp IObserver ``` nor ```csharp IObservable ``` interfaces.
- [IBatchContainer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.ibatchcontainer/) - Each queue message is allowed to be a heterogeneous, ordered set of events. [IBatchContainer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.ibatchcontainer/) contains these events and allows users to query the batch for a specific type of event.
- [IBatchContainerBatch](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.ibatchcontainerbatch/) - A batch of queue messages (see IBatchContainer for description of batch contents)
- [IConsistentRingStreamQueueMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.ideploymentconfiguration/) - Interface for accessing the deployment configuration.
- [ImplicitConsumerGrainExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.implicitconsumergrainextensions/) - Extension methods for grains implicitly subscribed to streams.
- [IQueueAdapter](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueadapter/) - Stream queue storage adapter. This is an abstraction layer that hides the implementation details of the underlying queuing system.
- [IQueueAdapterCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueadaptercache/) - Functionality for creating an [IQueueCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueuecache/) for a given queue.
- [IQueueAdapterFactory](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueadapterfactory/) - Adapter factory. This should create an adapter from the stream provider configuration
- [IQueueAdapterReceiver](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueadapterreceiver/) - Receives batches of messages from a single partition of a message queue.
- [IQueueCache](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueuecache/)
- [IQueueCacheCursor](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueuecachecursor/) - Enumerates the messages in a stream.
- [IQueueDataAdapter&lt;TQueueMessage, TMessageBatch&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueuedataadapter-2/) - Converts event data to and from queue message
- [IQueueDataAdapter&lt;TQueueMessage&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueuedataadapter-1/) - Converts event data to queue message
- [IQueueFlowController](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueflowcontroller/) - Functionality for controlling the flow of retrieved queue items.
- [IStreamFailureHandler](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamfailurehandler/) - Functionality for handling stream failures.
- [IStreamIdentity](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamidentity/) - Uniquely identifies a stream.
- [IStreamIdMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamidmapper/) - Common interface for components that map a [StreamId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.runtime.streamid/) to a [GrainId](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainid/)
- [IStreamNamespacePredicate](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamnamespacepredicate/) - Stream namespace predicate used for filtering implicit subscriptions using [ImplicitStreamSubscriptionAttribute](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.implicitstreamsubscriptionattribute/).
- [IStreamNamespacePredicateProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamnamespacepredicateprovider/) - Converts predicate pattern strings to [IStreamNamespacePredicate](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamnamespacepredicate/) instances.
- [IStreamProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamprovider/) - Functionality for providing streams to consumers and producers.
- [IStreamPubSub](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreampubsub/)
- [IStreamQueueBalanceListener](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamqueuebalancelistener/) - The stream queue balancer listener receives notifications from a stream queue balancer ( ```csharp 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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamqueuebalancer/) - The stream queue balancer is responsible for load balancing queues across all other related queue balancers. It notifies any listeners ( ```csharp 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&lt;TCheckpoint&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamqueuecheckpointer-1/) - Functionality for checkpointing a stream.
- [IStreamQueueCheckpointerFactory](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamqueuecheckpointerfactory/) - Factory for creating `Orleans.Streams.IStreamQueueCheckpointer-1` instances.
- [IStreamQueueMapper](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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.
- [LeaseBasedQueueBalancer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.loadshedqueueflowcontroller/) - Flow control triggered by silo load shedding. This is an all-or-nothing trigger which will request `System.Int32.MaxValue`, or `0`.
- [NoOpStreamDeliveryFailureHandler](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.noopstreamdeliveryfailurehandler/) - [IStreamFailureHandler](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamfailurehandler/) which does nothing in response to failures.
- [ProviderStartException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.providerstartexception/) - Exception thrown whenever a provider has failed to be started.
- [PubSubSubscriptionState](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.pubsubsubscriptionstate/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [QueueAdapterConstants](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.queueadapterconstants/) - Constants for queue adapters.
- [QueueAdapterExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.queueadapterextensions/) - Extension methods for [IQueueAdapter](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.iqueueadapter/)
- [QueueBalancerBase](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.queuebalancerbase/) - Base class for StreamQueueBalancer
- [QueueCacheMissException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.queuecachemissexception/) - Exception indicates that the requested message is not in the queue cache.
- [QueueId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.queueid/) - Identifier of a durable queue. Used by Orleans streaming extensions.
- [RegexStreamNamespacePredicate](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.regexstreamnamespacepredicate/) - [IStreamNamespacePredicate](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamnamespacepredicate/) implementation allowing to filter stream namespaces by regular expression.
- [SequentialItem&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.sequentialitem-1/) - Represents a stream item within a sequence.
- [StreamEventDeliveryFailureException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streameventdeliveryfailureexception/) - This exception indicates that a stream event was not successfully delivered to the consumer.
- [StreamIdentity](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamidentity/) - Stream identity contains the public stream information use to uniquely identify a stream. Stream identities are only unique per stream provider.
- [StreamingTimeProviderNames](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamingtimeprovidernames/) - Service key used to resolve the streaming subsystem's `System.TimeProvider` from keyed dependency injection. See [TimeProviderNames](/orleans/docs/api/csharp/microsoft.orleans.core/orleans.runtime.timeprovidernames/) for the core runtime areas.
- [StreamPosition](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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.
- [StreamProviderDirection](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamproviderdirection/) - Identifies whether a stream provider is read-only, read-write, or write-only.
- [StreamProviderExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamproviderextensions/) - Extensions for [IStreamProvider](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.istreamprovider/).
- [StreamPubSubType](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streampubsubtype/) - Identifies the publish/subscribe system types which stream providers can use.
- [StreamSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamsequencetokenutilities/) - Utilities for comparing [StreamSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamsequencetoken/) instances.
- [StreamSubscriptionHandle&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamsubscriptionhandle-1/) - 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](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamsubscriptionhandleextensions/) - Extension methods for `Orleans.Streams.StreamSubscriptionHandle-1`.
- [StreamSubscriptionHandlerFactory](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.streamsubscriptionhandlerfactory/) - Factory for creating `Orleans.Streams.StreamSubscriptionHandle-1` instances.
- [SubscriptionStates](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.pubsubsubscriptionstate.subscriptionstates/) - Provides the base class for enumerations.

## Orleans.Streams.Core

- [IStreamSubscriptionHandleFactory](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionhandlefactory/) - Functionality for creating a stream subscription handle for a particular stream and subscription.
- [IStreamSubscriptionManager](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanager/) - Functionality for managing stream subscriptions.
- [IStreamSubscriptionManagerAdmin](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanageradmin/) - Functionality for retrieving a [IStreamSubscriptionManager](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanager/) instance.
- [IStreamSubscriptionManagerRetriever](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanagerretriever/) - Provides functionality for retrieving an [IStreamSubscriptionManager](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanager/) instance.
- [IStreamSubscriptionObserver](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionobserver/) - When implemented by a grain, notifies the grain of any new or resuming subscriptions.
- [StreamSubscription](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.streamsubscription/) - Represents a subscription to a stream.
- [StreamSubscriptionManagerType](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.streamsubscriptionmanagertype/) - Constants for [IStreamSubscriptionManagerAdmin](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanageradmin/).

## Orleans.Streams.Filtering

- [IStreamFilter](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.filtering.istreamfilter/) - Functionality for filtering streams.

## Orleans.Streams.PubSub

- [StreamSubscriptionManagerExtensions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.pubsub.streamsubscriptionmanagerextensions/) - Extension methods for [IStreamSubscriptionManager](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleans.streams.core.istreamsubscriptionmanager/).

## OrleansCodeGen.Orleans.Hosting

- [Codec_SimpleGeneratorOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.hosting.codec-simplegeneratoroptions/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_SimpleGeneratorOptions](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.hosting.copier-simplegeneratoroptions/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

## OrleansCodeGen.Orleans.Providers

- [Codec_DefaultMemoryMessageBodySerializer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.codec-defaultmemorymessagebodyserializer/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_Invokable_IMemoryStreamQueueGrain_GrainReference_74D60341](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.codec-invokable-imemorystreamqueuegrain-grainreference-74d60341/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_Invokable_IMemoryStreamQueueGrain_GrainReference_7A8F8C1A](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.codec-invokable-imemorystreamqueuegrain-grainreference-7a8f8c1a/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_MemoryMessageBody](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.codec-memorymessagebody/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_MemoryMessageData](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.codec-memorymessagedata/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_Invokable_IMemoryStreamQueueGrain_GrainReference_74D60341](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.copier-invokable-imemorystreamqueuegrain-grainreference-74d60341/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_Invokable_IMemoryStreamQueueGrain_GrainReference_7A8F8C1A](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.copier-invokable-imemorystreamqueuegrain-grainreference-7a8f8c1a/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_MemoryMessageBody](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.copier-memorymessagebody/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_MemoryMessageData](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.copier-memorymessagedata/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Invokable_IMemoryStreamQueueGrain_GrainReference_74D60341](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.invokable-imemorystreamqueuegrain-grainreference-74d60341/) - Base class for requests for methods which return `System.Threading.Tasks.ValueTask`.
- [Invokable_IMemoryStreamQueueGrain_GrainReference_7A8F8C1A](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.invokable-imemorystreamqueuegrain-grainreference-7a8f8c1a/) - Base class for requests for methods which return `System.Threading.Tasks.Task-1`.

## OrleansCodeGen.Orleans.Providers.Streams.Common

- [Codec_EventSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.common.codec-eventsequencetoken/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_EventSequenceTokenV2](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.common.codec-eventsequencetokenv2/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_EventSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.common.copier-eventsequencetoken/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_EventSequenceTokenV2](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.common.copier-eventsequencetokenv2/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

## OrleansCodeGen.Orleans.Providers.Streams.Generator

- [Codec_GeneratedBatchContainer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.generator.codec-generatedbatchcontainer/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_GeneratedEvent](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.generator.codec-generatedevent/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_GeneratedBatchContainer](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.generator.copier-generatedbatchcontainer/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_GeneratedEvent](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.providers.streams.generator.copier-generatedevent/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

## OrleansCodeGen.Orleans.Runtime

- [Codec_QualifiedStreamId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.runtime.codec-qualifiedstreamid/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_StreamId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.runtime.codec-streamid/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

## OrleansCodeGen.Orleans.Streams

- [Codec_BatchContainerBatch](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-batchcontainerbatch/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_CacheFullException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-cachefullexception/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_DataNotAvailableException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-datanotavailableexception/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_FaultedSubscriptionException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-faultedsubscriptionexception/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_ProviderStartException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-providerstartexception/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_PubSubSubscriptionState](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-pubsubsubscriptionstate/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_QueueCacheMissException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-queuecachemissexception/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_QueueId](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-queueid/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_SequentialItem&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-sequentialitem-1/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_StreamEventDeliveryFailureException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-streameventdeliveryfailureexception/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_StreamIdentity](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-streamidentity/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Codec_StreamSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-streamsequencetoken/) - Serializer for types which are abstract and therefore cannot be instantiated themselves, such as abstract classes and interface types.
- [Codec_StreamSubscriptionHandle&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.codec-streamsubscriptionhandle-1/) - Serializer for types which are abstract and therefore cannot be instantiated themselves, such as abstract classes and interface types.
- [Copier_BatchContainerBatch](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-batchcontainerbatch/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_CacheFullException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-cachefullexception/) - Default copier implementation for (rarely copied) exception classes
- [Copier_DataNotAvailableException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-datanotavailableexception/) - Default copier implementation for (rarely copied) exception classes
- [Copier_FaultedSubscriptionException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-faultedsubscriptionexception/) - Default copier implementation for (rarely copied) exception classes
- [Copier_ProviderStartException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-providerstartexception/) - Default copier implementation for (rarely copied) exception classes
- [Copier_PubSubSubscriptionState](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-pubsubsubscriptionstate/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_QueueCacheMissException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-queuecachemissexception/) - Default copier implementation for (rarely copied) exception classes
- [Copier_SequentialItem&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-sequentialitem-1/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_StreamEventDeliveryFailureException](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-streameventdeliveryfailureexception/) - Default copier implementation for (rarely copied) exception classes
- [Copier_StreamSequenceToken](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-streamsequencetoken/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
- [Copier_StreamSubscriptionHandle&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.copier-streamsubscriptionhandle-1/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

## OrleansCodeGen.Orleans.Streams.Core

- [Codec_StreamSubscription](/orleans/docs/api/csharp/microsoft.orleans.streaming/orleanscodegen.orleans.streams.core.codec-streamsubscription/) - Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.
