Show / Hide Table of Contents

Interface IMessageHandlerSelector

Interface for message handler selector.

Namespace: Kephas.Messaging.HandlerSelectors
Assembly: Kephas.Messaging.dll
Syntax
[SingletonAppServiceContract(AllowMultiple = true)]
public interface IMessageHandlerSelector

Methods

| Improve this Doc View Source

CanHandle(Type, Type, Object)

Indicates whether the selector can handle the indicated message type.

Declaration
bool CanHandle(Type envelopeType, Type messageType, object messageId)
Parameters
Type Name Description
System.Type envelopeType

The type of the envelope. This is typically the adapter type, if the message does not implement IMessage.

System.Type messageType

The type of the message.

System.Object messageId

The ID of the message.

Returns
Type Description
System.Boolean

True if the selector can handle the message type, false if not.

Remarks

This is the method by which the selectors are requested to indicate whether they are in charge of providing the handlers for a specific message type and ID.

| Improve this Doc View Source

GetHandlersFactory(IEnumerable<IExportFactory<IMessageHandler, MessageHandlerMetadata>>, Type, Type, Object)

Gets a factory which retrieves the components handling messages of the given type.

Declaration
Func<IEnumerable<IMessageHandler>> GetHandlersFactory(IEnumerable<IExportFactory<IMessageHandler, MessageHandlerMetadata>> handlerFactories, Type envelopeType, Type messageType, object messageId)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<IExportFactory<IMessageHandler, MessageHandlerMetadata>> handlerFactories

The handler factories.

System.Type envelopeType

The type of the envelope. This is typically the adapter type, if the message does not implement IMessage.

System.Type messageType

The type of the message.

System.Object messageId

The ID of the message.

Returns
Type Description
System.Func<System.Collections.Generic.IEnumerable<IMessageHandler>>

A factory of an enumeration of message handlers.

Extension Methods

DynamicObjectExtensions.SetPropertyValue(Object, String, Object)
DynamicObjectExtensions.TrySetPropertyValue(Object, String, Object)
DynamicObjectExtensions.GetPropertyValue(Object, String)
DynamicObjectExtensions.TryGetPropertyValue(Object, String, out Object)
DynamicObjectExtensions.GetRuntimeTypeInfo(Object)
DynamicObjectExtensions.ToDynamic(Object)
DynamicObjectExtensions.ToExpando(Object)
BehaviorValue.ToBehaviorValue<TValue>(TValue)
CollectionExtensions.AddRange<T, TItem>(T, IEnumerable<TItem>)
LoggingExtensions.GetLogger(Object, IContext)
TypeExtensions.GetAbstractType(Object)
TypeExtensions.GetAbstractTypeInfo(Object)
ReflectionHelper.GetTypeInfo(Object)
EntityEntryExtensions.TryGetAttachedEntityEntry(Object)
  • Improve this Doc
  • View Source
Back to top Generated by DocFX