Show / Hide Table of Contents

Class DefaultMessageBroker

Base implementation of a IMessageBroker.

Inheritance
System.Object
Loggable
DefaultMessageBroker
Implements
ILoggable
IMessageBroker
IAsyncInitializable
IAsyncFinalizable
Inherited Members
Loggable.Logger
Loggable.GetLogger()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: Kephas.Messaging.Distributed
Assembly: Kephas.Messaging.dll
Syntax
[OverridePriority(Priority.Low)]
public class DefaultMessageBroker : Loggable, ILoggable, IMessageBroker, IAsyncInitializable, IAsyncFinalizable

Constructors

| Improve this Doc View Source

DefaultMessageBroker(ICollection<IExportFactory<IMessageRouter, MessageRouterMetadata>>, IExportFactory<IBrokeredMessageBuilder>)

Initializes a new instance of the DefaultMessageBroker class.

Declaration
public DefaultMessageBroker(ICollection<IExportFactory<IMessageRouter, MessageRouterMetadata>> routerFactories, IExportFactory<IBrokeredMessageBuilder> builderFactory)
Parameters
Type Name Description
System.Collections.Generic.ICollection<IExportFactory<IMessageRouter, MessageRouterMetadata>> routerFactories

The router factories.

IExportFactory<IBrokeredMessageBuilder> builderFactory

The builder factory.

Methods

| Improve this Doc View Source

CreateBrokeredMessageBuilder(IContext)

Creates a brokered messsage builder.

Declaration
protected virtual IBrokeredMessageBuilder CreateBrokeredMessageBuilder(IContext context)
Parameters
Type Name Description
IContext context

The publishing context.

Returns
Type Description
IBrokeredMessageBuilder

The new brokered messsage builder.

| Improve this Doc View Source

DispatchAsync(IBrokeredMessage, IContext, CancellationToken)

Dispatches the brokered message asynchronously.

Declaration
public virtual Task<IMessage> DispatchAsync(IBrokeredMessage brokeredMessage, IContext context, CancellationToken cancellationToken = default(CancellationToken))
Parameters
Type Name Description
IBrokeredMessage brokeredMessage

The brokered message.

IContext context

Optional. The dispatching context.

System.Threading.CancellationToken cancellationToken

Optional. The cancellation token.

Returns
Type Description
System.Threading.Tasks.Task<IMessage>

The asynchronous result that yields an IMessage.

| Improve this Doc View Source

FinalizeAsync(IContext, CancellationToken)

Finalizes the service.

Declaration
public virtual Task FinalizeAsync(IContext context = null, CancellationToken cancellationToken = default(CancellationToken))
Parameters
Type Name Description
IContext context

Optional. An optional context for finalization.

System.Threading.CancellationToken cancellationToken

Optional. The cancellation token.

Returns
Type Description
System.Threading.Tasks.Task

An asynchronous result.

| Improve this Doc View Source

InitializeAsync(IContext, CancellationToken)

Initializes the service asynchronously.

Declaration
public virtual Task InitializeAsync(IContext context = null, CancellationToken cancellationToken = default(CancellationToken))
Parameters
Type Name Description
IContext context

Optional. An optional context for initialization.

System.Threading.CancellationToken cancellationToken

Optional. The cancellation token.

Returns
Type Description
System.Threading.Tasks.Task

An awaitable task.

| Improve this Doc View Source

ReceiveReply(IBrokeredMessage, IContext)

Notification method for receiving a reply.

Declaration
protected virtual void ReceiveReply(IBrokeredMessage replyMessage, IContext context = null)
Parameters
Type Name Description
IBrokeredMessage replyMessage

Message describing the reply.

IContext context

Optional. The reply context.

| Improve this Doc View Source

RouterDispatchAsync(IBrokeredMessage, IContext, CancellationToken)

Sends the brokered message asynchronously over the physical medium using registered routers.

Declaration
protected virtual Task RouterDispatchAsync(IBrokeredMessage brokeredMessage, IContext context, CancellationToken cancellationToken)
Parameters
Type Name Description
IBrokeredMessage brokeredMessage

The brokered message.

IContext context

The send context.

System.Threading.CancellationToken cancellationToken

The cancellation token.

Returns
Type Description
System.Threading.Tasks.Task

The asynchronous result.

Implements

ILoggable
IMessageBroker
IAsyncInitializable
IAsyncFinalizable

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)
MessageBrokerExtensions.PublishAsync(IMessageBroker, Object, IContext, CancellationToken)
MessageBrokerExtensions.PublishAsync(IMessageBroker, Object, IEndpoint, IContext, CancellationToken)
MessageBrokerExtensions.PublishAsync(IMessageBroker, Object, IEnumerable<IEndpoint>, IContext, CancellationToken)
MessageBrokerExtensions.PublishAsync<TEvent>(IMessageBroker, IContext, CancellationToken)
MessageBrokerExtensions.Publish(IMessageBroker, Object, IContext)
MessageBrokerExtensions.Publish<TEvent>(IMessageBroker, IContext)
MessageBrokerExtensions.PublishAsync(IMessageBroker, Object, IExpando, IContext, CancellationToken)
MessageBrokerExtensions.Publish(IMessageBroker, Object, IExpando, IContext)
MessageBrokerExtensions.ProcessAsync(IMessageBroker, Object, IContext, CancellationToken)
MessageBrokerExtensions.ProcessAsync(IMessageBroker, Object, IEndpoint, IContext, CancellationToken)
MessageBrokerExtensions.ProcessAsync(IMessageBroker, Object, IEnumerable<IEndpoint>, IContext, CancellationToken)
MessageBrokerExtensions.ProcessOneWayAsync(IMessageBroker, Object, IContext, CancellationToken)
MessageBrokerExtensions.ProcessOneWayAsync(IMessageBroker, Object, IEndpoint, IContext, CancellationToken)
MessageBrokerExtensions.ProcessOneWayAsync(IMessageBroker, Object, IEnumerable<IEndpoint>, IContext, CancellationToken)
EntityEntryExtensions.TryGetAttachedEntityEntry(Object)
  • Improve this Doc
  • View Source
Back to top Generated by DocFX