Class StreamEnumerableMessageArgumentResolver
Resolves the parameters declared as IMessageStreamEnumerable<TMessage> where
TMessage
is compatible with the type of the message being published.
Inherited Members
Namespace: Silverback.Messaging.Subscribers.ArgumentResolvers
Assembly: Silverback.Core.dll
Syntax
public class StreamEnumerableMessageArgumentResolver : IStreamEnumerableMessageArgumentResolver, IMessageArgumentResolver, IArgumentResolver
Methods
| Improve this doc View sourceCanResolve(Type)
Returns a boolean value indicating whether this resolver instance can handle the parameter of the specified type.
Declaration
public bool CanResolve(Type parameterType)
Parameters
Type | Name | Description |
---|---|---|
Type | parameterType | The type of the parameter to be resolved. |
Returns
Type | Description |
---|---|
bool | A boolean value indicating whether the specified parameter type can be handled. |
GetMessageType(Type)
Returns the actual message type in the specified parameter type (e.g. TMessage
for a parameter
declared as IEnumerable<TMessage>
.
Declaration
public Type GetMessageType(Type parameterType)
Parameters
Type | Name | Description |
---|---|---|
Type | parameterType | The type of the parameter to be resolved. |
Returns
Type | Description |
---|---|
Type | The actual message type. |
GetValue(IMessageStreamProvider, Type, IReadOnlyCollection<IMessageFilter>?)
Returns the messages stream in a shape that is compatible with the subscribed method.
Declaration
public 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. |
IReadOnlyCollection<IMessageFilter> | filters | The filters to be applied. |
Returns
Type | Description |
---|---|
ILazyArgumentValue | The actual value to be forwarded to the subscribed method. |