Show / Hide Table of Contents

    Interface IStreamEnumerableMessageArgumentResolver

    These resolvers are used to handle the message streams such as IMessageStreamEnumerable<TMessage>. The streams are basically handled as a single message by the publisher. The difference is that it is guaranteed that the subscribers are invoked from another thread, when published via PublishAsync(object)/ PublishAsync<TResult>(object). This is done to avoid blocking the original thread waiting for the stream to complete.

    Inherited Members
    IMessageArgumentResolver.GetMessageType(Type)
    IArgumentResolver.CanResolve(Type)
    Namespace: Silverback.Messaging.Subscribers.ArgumentResolvers
    Assembly: Silverback.Core.dll
    Syntax
    public interface IStreamEnumerableMessageArgumentResolver : IMessageArgumentResolver, IArgumentResolver

    Methods

    | Improve this doc View source

    GetValue(IMessageStreamProvider, Type, IReadOnlyCollection<IMessageFilter>?)

    Returns the messages stream in a shape that is compatible with the subscribed method.

    Declaration
    ILazyArgumentValue GetValue(IMessageStreamProvider streamProvider, Type targetMessageType, IReadOnlyCollection<IMessageFilter>? filters = null)
    Parameters
    Type Name Description
    IMessageStreamProvider streamProvider

    The IMessageStreamProvider being published.

    Type targetMessageType

    The actual message type being declared by the subscribed method (e.g. TMessage for an IMessageStreamEnumerable<TMessage>).

    IReadOnlyCollection<IMessageFilter> filters

    The filters to be applied.

    Returns
    Type Description
    ILazyArgumentValue

    The actual value to be forwarded to the subscribed method.

    • Improve this doc
    • View source
    GitHub E-Mail
    ↑ Back to top © 2020 Sergio Aquilini