Show / Hide Table of Contents

Class RabbitMqDistributedEventBus

Inheritance
object
EventBusBase
DistributedEventBusBase
RabbitMqDistributedEventBus
Implements
IDistributedEventBus
IEventBus
ISupportsEventBoxes
ISingletonDependency
Inherited Members
DistributedEventBusBase.Subscribe<TEvent>(IDistributedEventHandler<TEvent>)
DistributedEventBusBase.PublishAsync(Type, object, bool)
DistributedEventBusBase.PublishAsync<TEvent>(TEvent, bool, bool)
DistributedEventBusBase.PublishAsync(Type, object, bool, bool)
DistributedEventBusBase.AddToInboxAsync(string, string, Type, byte[])
DistributedEventBusBase.GuidGenerator
DistributedEventBusBase.Clock
DistributedEventBusBase.AbpDistributedEventBusOptions
EventBusBase.Subscribe<TEvent>(Func<TEvent, Task>)
EventBusBase.Subscribe<TEvent, THandler>()
EventBusBase.Subscribe(Type, IEventHandler)
EventBusBase.Subscribe<TEvent>(IEventHandlerFactory)
EventBusBase.Unsubscribe<TEvent>(ILocalEventHandler<TEvent>)
EventBusBase.Unsubscribe<TEvent>(IEventHandlerFactory)
EventBusBase.UnsubscribeAll<TEvent>()
EventBusBase.PublishAsync<TEvent>(TEvent, bool)
EventBusBase.TriggerHandlersAsync(Type, object)
EventBusBase.TriggerHandlersAsync(Type, object, List<Exception>, InboxConfig)
EventBusBase.ThrowOriginalExceptions(Type, List<Exception>)
EventBusBase.SubscribeHandlers(ITypeList<IEventHandler>)
EventBusBase.TriggerHandlerAsync(IEventHandlerFactory, Type, object, List<Exception>, InboxConfig)
EventBusBase.GetEventDataTenantId(object)
EventBusBase.ServiceScopeFactory
EventBusBase.CurrentTenant
EventBusBase.UnitOfWorkManager
EventBusBase.EventHandlerInvoker
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Volo.Abp.EventBus.RabbitMq
Assembly: Volo.Abp.EventBus.RabbitMQ.dll
Syntax
[Dependency(ReplaceServices = true)]
[ExposeServices(new Type[] { typeof(IDistributedEventBus), typeof(RabbitMqDistributedEventBus) })]
public class RabbitMqDistributedEventBus : DistributedEventBusBase, IDistributedEventBus, IEventBus, ISupportsEventBoxes, ISingletonDependency

Constructors

RabbitMqDistributedEventBus(IOptions<AbpRabbitMqEventBusOptions>, IConnectionPool, IRabbitMqSerializer, IServiceScopeFactory, IOptions<AbpDistributedEventBusOptions>, IRabbitMqMessageConsumerFactory, ICurrentTenant, IUnitOfWorkManager, IGuidGenerator, IClock, IEventHandlerInvoker)

Declaration
public RabbitMqDistributedEventBus(IOptions<AbpRabbitMqEventBusOptions> options, IConnectionPool connectionPool, IRabbitMqSerializer serializer, IServiceScopeFactory serviceScopeFactory, IOptions<AbpDistributedEventBusOptions> distributedEventBusOptions, IRabbitMqMessageConsumerFactory messageConsumerFactory, ICurrentTenant currentTenant, IUnitOfWorkManager unitOfWorkManager, IGuidGenerator guidGenerator, IClock clock, IEventHandlerInvoker eventHandlerInvoker)
Parameters
Type Name Description
Microsoft.Extensions.Options.IOptions<TOptions><AbpRabbitMqEventBusOptions> options
IConnectionPool connectionPool
IRabbitMqSerializer serializer
Microsoft.Extensions.DependencyInjection.IServiceScopeFactory serviceScopeFactory
Microsoft.Extensions.Options.IOptions<TOptions><AbpDistributedEventBusOptions> distributedEventBusOptions
IRabbitMqMessageConsumerFactory messageConsumerFactory
ICurrentTenant currentTenant
IUnitOfWorkManager unitOfWorkManager
IGuidGenerator guidGenerator
IClock clock
IEventHandlerInvoker eventHandlerInvoker

Properties

AbpRabbitMqEventBusOptions

Declaration
protected AbpRabbitMqEventBusOptions AbpRabbitMqEventBusOptions { get; }
Property Value
Type Description
AbpRabbitMqEventBusOptions

ConnectionPool

Declaration
protected IConnectionPool ConnectionPool { get; }
Property Value
Type Description
IConnectionPool

Consumer

Declaration
protected IRabbitMqMessageConsumer Consumer { get; }
Property Value
Type Description
IRabbitMqMessageConsumer

EventTypes

Declaration
protected ConcurrentDictionary<string, Type> EventTypes { get; }
Property Value
Type Description
System.Collections.Concurrent.ConcurrentDictionary<TKey, TValue><string, System.Type>

HandlerFactories

Declaration
protected ConcurrentDictionary<Type, List<IEventHandlerFactory>> HandlerFactories { get; }
Property Value
Type Description
System.Collections.Concurrent.ConcurrentDictionary<TKey, TValue><System.Type, System.Collections.Generic.List<T><IEventHandlerFactory>>

MessageConsumerFactory

Declaration
protected IRabbitMqMessageConsumerFactory MessageConsumerFactory { get; }
Property Value
Type Description
IRabbitMqMessageConsumerFactory

Serializer

Declaration
protected IRabbitMqSerializer Serializer { get; }
Property Value
Type Description
IRabbitMqSerializer

Methods

AddToUnitOfWork(IUnitOfWork, UnitOfWorkEventRecord)

Declaration
protected override void AddToUnitOfWork(IUnitOfWork unitOfWork, UnitOfWorkEventRecord eventRecord)
Parameters
Type Name Description
IUnitOfWork unitOfWork
UnitOfWorkEventRecord eventRecord
Overrides
EventBusBase.AddToUnitOfWork(IUnitOfWork, UnitOfWorkEventRecord)

GetHandlerFactories(Type)

Declaration
protected override IEnumerable<EventBusBase.EventTypeWithEventHandlerFactories> GetHandlerFactories(Type eventType)
Parameters
Type Name Description
System.Type eventType
Returns
Type Description
System.Collections.Generic.IEnumerable<T><EventBusBase.EventTypeWithEventHandlerFactories>
Overrides
EventBusBase.GetHandlerFactories(Type)

Initialize()

Declaration
public void Initialize()

ProcessFromInboxAsync(IncomingEventInfo, InboxConfig)

Declaration
public override Task ProcessFromInboxAsync(IncomingEventInfo incomingEvent, InboxConfig inboxConfig)
Parameters
Type Name Description
IncomingEventInfo incomingEvent
InboxConfig inboxConfig
Returns
Type Description
System.Threading.Tasks.Task
Overrides
DistributedEventBusBase.ProcessFromInboxAsync(IncomingEventInfo, InboxConfig)

PublishAsync(IModel, string, byte[], IBasicProperties, Dictionary<string, object>, Guid?)

Declaration
protected virtual Task PublishAsync(IModel channel, string eventName, byte[] body, IBasicProperties properties, Dictionary<string, object> headersArguments = null, Guid? eventId = null)
Parameters
Type Name Description
RabbitMQ.Client.IModel channel
string eventName
byte[] body
RabbitMQ.Client.IBasicProperties properties
System.Collections.Generic.Dictionary<TKey, TValue><string, object> headersArguments
System.Guid? eventId
Returns
Type Description
System.Threading.Tasks.Task

PublishAsync(string, byte[], IBasicProperties, Dictionary<string, object>, Guid?)

Declaration
protected virtual Task PublishAsync(string eventName, byte[] body, IBasicProperties properties, Dictionary<string, object> headersArguments = null, Guid? eventId = null)
Parameters
Type Name Description
string eventName
byte[] body
RabbitMQ.Client.IBasicProperties properties
System.Collections.Generic.Dictionary<TKey, TValue><string, object> headersArguments
System.Guid? eventId
Returns
Type Description
System.Threading.Tasks.Task

PublishAsync(Type, object, IBasicProperties, Dictionary<string, object>)

Declaration
public Task PublishAsync(Type eventType, object eventData, IBasicProperties properties, Dictionary<string, object> headersArguments = null)
Parameters
Type Name Description
System.Type eventType
object eventData
RabbitMQ.Client.IBasicProperties properties
System.Collections.Generic.Dictionary<TKey, TValue><string, object> headersArguments
Returns
Type Description
System.Threading.Tasks.Task

PublishFromOutboxAsync(OutgoingEventInfo, OutboxConfig)

Declaration
public override Task PublishFromOutboxAsync(OutgoingEventInfo outgoingEvent, OutboxConfig outboxConfig)
Parameters
Type Name Description
OutgoingEventInfo outgoingEvent
OutboxConfig outboxConfig
Returns
Type Description
System.Threading.Tasks.Task
Overrides
DistributedEventBusBase.PublishFromOutboxAsync(OutgoingEventInfo, OutboxConfig)

PublishManyFromOutboxAsync(IEnumerable<OutgoingEventInfo>, OutboxConfig)

Declaration
public override Task PublishManyFromOutboxAsync(IEnumerable<OutgoingEventInfo> outgoingEvents, OutboxConfig outboxConfig)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<T><OutgoingEventInfo> outgoingEvents
OutboxConfig outboxConfig
Returns
Type Description
System.Threading.Tasks.Task
Overrides
DistributedEventBusBase.PublishManyFromOutboxAsync(IEnumerable<OutgoingEventInfo>, OutboxConfig)

PublishToEventBusAsync(Type, object)

Declaration
protected override Task PublishToEventBusAsync(Type eventType, object eventData)
Parameters
Type Name Description
System.Type eventType
object eventData
Returns
Type Description
System.Threading.Tasks.Task
Overrides
EventBusBase.PublishToEventBusAsync(Type, object)

Serialize(object)

Declaration
protected override byte[] Serialize(object eventData)
Parameters
Type Name Description
object eventData
Returns
Type Description
byte[]
Overrides
DistributedEventBusBase.Serialize(object)

Subscribe(Type, IEventHandlerFactory)

Declaration
public override IDisposable Subscribe(Type eventType, IEventHandlerFactory factory)
Parameters
Type Name Description
System.Type eventType
IEventHandlerFactory factory
Returns
Type Description
System.IDisposable
Overrides
EventBusBase.Subscribe(Type, IEventHandlerFactory)

Unsubscribe(Type, IEventHandler)

Declaration
public override void Unsubscribe(Type eventType, IEventHandler handler)
Parameters
Type Name Description
System.Type eventType
IEventHandler handler
Overrides
EventBusBase.Unsubscribe(Type, IEventHandler)

Unsubscribe(Type, IEventHandlerFactory)

Declaration
public override void Unsubscribe(Type eventType, IEventHandlerFactory factory)
Parameters
Type Name Description
System.Type eventType
IEventHandlerFactory factory
Overrides
EventBusBase.Unsubscribe(Type, IEventHandlerFactory)

Unsubscribe<TEvent>(Func<TEvent, Task>)

Declaration
public override void Unsubscribe<TEvent>(Func<TEvent, Task> action) where TEvent : class
Parameters
Type Name Description
System.Func<T, TResult><TEvent, System.Threading.Tasks.Task> action
Type Parameters
Name Description
TEvent
Overrides
Volo.Abp.EventBus.EventBusBase.Unsubscribe<TEvent>(System.Func<TEvent, System.Threading.Tasks.Task>)

UnsubscribeAll(Type)

Declaration
public override void UnsubscribeAll(Type eventType)
Parameters
Type Name Description
System.Type eventType
Overrides
EventBusBase.UnsubscribeAll(Type)

Implements

IDistributedEventBus
IEventBus
ISupportsEventBoxes
ISingletonDependency

Extension Methods

AbpObjectExtensions.As<T>(object)
AbpObjectExtensions.To<T>(object)
LockExtensions.Locking(object, Action)
LockExtensions.Locking<TResult>(object, Func<TResult>)
AbpObjectExtensions.If<T>(T, bool, Action<T>)
AbpObjectExtensions.If<T>(T, bool, Func<T, T>)
AbpObjectExtensions.IsIn<T>(T, IEnumerable<T>)
AbpObjectExtensions.IsIn<T>(T, params T[])
AbpQueryableExtensions.OrderByIf<T, TQueryable>(TQueryable, bool, string)
AbpQueryableExtensions.PageBy<T, TQueryable>(TQueryable, int, int)
AbpQueryableExtensions.WhereIf<T, TQueryable>(TQueryable, bool, Expression<Func<T, bool>>)
AbpQueryableExtensions.WhereIf<T, TQueryable>(TQueryable, bool, Expression<Func<T, int, bool>>)
LockExtensions.Locking<T>(T, Action<T>)
LockExtensions.Locking<T, TResult>(T, Func<T, TResult>)
In This Article
Back to top Powered by Volosoft