Table of Contents

Interface IMessageStreamProvider

Namespace
Silverback.Messaging.Messages
Assembly
Silverback.Core.dll

Relays the streamed messages to all the linked Silverback.Messaging.Messages.MessageStreamEnumerable<TMessage>.

public interface IMessageStreamProvider

Properties

MessageType

Gets the type of the messages being streamed.

Type MessageType { get; }

Property Value

Type

StreamsCount

int StreamsCount { get; }

Property Value

int

Methods

CreateLazyStream(Type, IReadOnlyCollection<IMessageFilter>?)

Creates a new ILazyMessageStreamEnumerable<TMessage> that will be linked with this provider and will create the IMessageStreamEnumerable<TMessage> as soon as a message matching the type messageType is pushed.

ILazyMessageStreamEnumerable<object> CreateLazyStream(Type messageType, IReadOnlyCollection<IMessageFilter>? filters = null)

Parameters

messageType Type

The type of the messages to be streamed to the linked stream.

filters IReadOnlyCollection<IMessageFilter>

The filters to be applied.

Returns

ILazyMessageStreamEnumerable<object>

The linked ILazyMessageStreamEnumerable<TMessage>.

CreateLazyStream<TMessage>(IReadOnlyCollection<IMessageFilter>?)

Creates a new ILazyMessageStreamEnumerable<TMessage> that will be linked with this provider and will create the IMessageStreamEnumerable<TMessage> as soon as a message matching the type TMessage is pushed.

ILazyMessageStreamEnumerable<TMessage> CreateLazyStream<TMessage>(IReadOnlyCollection<IMessageFilter>? filters = null)

Parameters

filters IReadOnlyCollection<IMessageFilter>

The filters to be applied.

Returns

ILazyMessageStreamEnumerable<TMessage>

The linked ILazyMessageStreamEnumerable<TMessage>.

Type Parameters

TMessage

The type of the messages to be streamed to the linked stream.

CreateStream(Type, IReadOnlyCollection<IMessageFilter>?)

Creates a new IMessageStreamEnumerable<TMessage> that will be linked with this provider and will be pushed with the messages matching the type messageType.

IMessageStreamEnumerable<object> CreateStream(Type messageType, IReadOnlyCollection<IMessageFilter>? filters = null)

Parameters

messageType Type

The type of the messages to be streamed to the linked stream.

filters IReadOnlyCollection<IMessageFilter>

The filters to be applied.

Returns

IMessageStreamEnumerable<object>

The linked IMessageStreamEnumerable<TMessage>.

CreateStream<TMessage>(IReadOnlyCollection<IMessageFilter>?)

Creates a new IMessageStreamEnumerable<TMessage> that will be linked with this provider and will be pushed with the messages matching the type TMessage.

IMessageStreamEnumerable<TMessage> CreateStream<TMessage>(IReadOnlyCollection<IMessageFilter>? filters = null)

Parameters

filters IReadOnlyCollection<IMessageFilter>

The filters to be applied.

Returns

IMessageStreamEnumerable<TMessage>

The linked IMessageStreamEnumerable<TMessage>.

Type Parameters

TMessage

The type of the messages to be streamed to the linked stream.