Show / Hide Table of Contents

Class DistributedEventBusBase

Inheritance
object
EventBusBase
DistributedEventBusBase
AzureDistributedEventBus
DaprDistributedEventBus
KafkaDistributedEventBus
RabbitMqDistributedEventBus
RebusDistributedEventBus
Implements
IDistributedEventBus
IEventBus
ISupportsEventBoxes
Inherited Members
EventBusBase.Subscribe<TEvent>(Func<TEvent, Task>)
EventBusBase.Subscribe<TEvent, THandler>()
EventBusBase.Subscribe(Type, IEventHandler)
EventBusBase.Subscribe<TEvent>(IEventHandlerFactory)
EventBusBase.Subscribe(Type, IEventHandlerFactory)
EventBusBase.Unsubscribe<TEvent>(Func<TEvent, Task>)
EventBusBase.Unsubscribe<TEvent>(ILocalEventHandler<TEvent>)
EventBusBase.Unsubscribe(Type, IEventHandler)
EventBusBase.Unsubscribe<TEvent>(IEventHandlerFactory)
EventBusBase.Unsubscribe(Type, IEventHandlerFactory)
EventBusBase.UnsubscribeAll<TEvent>()
EventBusBase.UnsubscribeAll(Type)
EventBusBase.PublishAsync<TEvent>(TEvent, bool)
EventBusBase.PublishToEventBusAsync(Type, object)
EventBusBase.AddToUnitOfWork(IUnitOfWork, UnitOfWorkEventRecord)
EventBusBase.TriggerHandlersAsync(Type, object)
EventBusBase.TriggerHandlersAsync(Type, object, List<Exception>, InboxConfig)
EventBusBase.ThrowOriginalExceptions(Type, List<Exception>)
EventBusBase.SubscribeHandlers(ITypeList<IEventHandler>)
EventBusBase.GetHandlerFactories(Type)
EventBusBase.TriggerHandlerAsync(IEventHandlerFactory, Type, object, List<Exception>, InboxConfig)
EventBusBase.InvokeEventHandlerAsync(IEventHandler, object, Type)
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.Distributed
Assembly: Volo.Abp.EventBus.dll
Syntax
public abstract class DistributedEventBusBase : EventBusBase, IDistributedEventBus, IEventBus, ISupportsEventBoxes

Constructors

DistributedEventBusBase(IServiceScopeFactory, ICurrentTenant, IUnitOfWorkManager, IOptions<AbpDistributedEventBusOptions>, IGuidGenerator, IClock, IEventHandlerInvoker, ILocalEventBus, ICorrelationIdProvider)

Declaration
protected DistributedEventBusBase(IServiceScopeFactory serviceScopeFactory, ICurrentTenant currentTenant, IUnitOfWorkManager unitOfWorkManager, IOptions<AbpDistributedEventBusOptions> abpDistributedEventBusOptions, IGuidGenerator guidGenerator, IClock clock, IEventHandlerInvoker eventHandlerInvoker, ILocalEventBus localEventBus, ICorrelationIdProvider correlationIdProvider)
Parameters
Type Name Description
IServiceScopeFactory serviceScopeFactory
ICurrentTenant currentTenant
IUnitOfWorkManager unitOfWorkManager
IOptions<AbpDistributedEventBusOptions> abpDistributedEventBusOptions
IGuidGenerator guidGenerator
IClock clock
IEventHandlerInvoker eventHandlerInvoker
ILocalEventBus localEventBus
ICorrelationIdProvider correlationIdProvider

Properties

AbpDistributedEventBusOptions

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

Clock

Declaration
protected IClock Clock { get; }
Property Value
Type Description
IClock

CorrelationIdProvider

Declaration
protected ICorrelationIdProvider CorrelationIdProvider { get; }
Property Value
Type Description
ICorrelationIdProvider

GuidGenerator

Declaration
protected IGuidGenerator GuidGenerator { get; }
Property Value
Type Description
IGuidGenerator

LocalEventBus

Declaration
protected ILocalEventBus LocalEventBus { get; }
Property Value
Type Description
ILocalEventBus

Methods

AddToInboxAsync(string?, string, Type, object, string?)

Declaration
protected Task<bool> AddToInboxAsync(string? messageId, string eventName, Type eventType, object eventData, string? correlationId)
Parameters
Type Name Description
string messageId
string eventName
Type eventType
object eventData
string correlationId
Returns
Type Description
Task<bool>

AddToOutboxAsync(Type, object)

Declaration
protected virtual Task<bool> AddToOutboxAsync(Type eventType, object eventData)
Parameters
Type Name Description
Type eventType
object eventData
Returns
Type Description
Task<bool>

OnAddToOutboxAsync(string, Type, object)

Declaration
protected virtual Task OnAddToOutboxAsync(string eventName, Type eventType, object eventData)
Parameters
Type Name Description
string eventName
Type eventType
object eventData
Returns
Type Description
Task

ProcessFromInboxAsync(IncomingEventInfo, InboxConfig)

Declaration
public abstract Task ProcessFromInboxAsync(IncomingEventInfo incomingEvent, InboxConfig inboxConfig)
Parameters
Type Name Description
IncomingEventInfo incomingEvent
InboxConfig inboxConfig
Returns
Type Description
Task

PublishAsync(Type, object, bool)

Declaration
public override Task PublishAsync(Type eventType, object eventData, bool onUnitOfWorkComplete = true)
Parameters
Type Name Description
Type eventType
object eventData
bool onUnitOfWorkComplete
Returns
Type Description
Task
Overrides
EventBusBase.PublishAsync(Type, object, bool)

PublishAsync(Type, object, bool, bool)

Declaration
public Task PublishAsync(Type eventType, object eventData, bool onUnitOfWorkComplete = true, bool useOutbox = true)
Parameters
Type Name Description
Type eventType
object eventData
bool onUnitOfWorkComplete
bool useOutbox
Returns
Type Description
Task

PublishAsync<TEvent>(TEvent, bool, bool)

Declaration
public Task PublishAsync<TEvent>(TEvent eventData, bool onUnitOfWorkComplete = true, bool useOutbox = true) where TEvent : class
Parameters
Type Name Description
TEvent eventData
bool onUnitOfWorkComplete
bool useOutbox
Returns
Type Description
Task
Type Parameters
Name Description
TEvent

PublishFromOutboxAsync(OutgoingEventInfo, OutboxConfig)

Declaration
public abstract Task PublishFromOutboxAsync(OutgoingEventInfo outgoingEvent, OutboxConfig outboxConfig)
Parameters
Type Name Description
OutgoingEventInfo outgoingEvent
OutboxConfig outboxConfig
Returns
Type Description
Task

PublishManyFromOutboxAsync(IEnumerable<OutgoingEventInfo>, OutboxConfig)

Declaration
public abstract Task PublishManyFromOutboxAsync(IEnumerable<OutgoingEventInfo> outgoingEvents, OutboxConfig outboxConfig)
Parameters
Type Name Description
IEnumerable<OutgoingEventInfo> outgoingEvents
OutboxConfig outboxConfig
Returns
Type Description
Task

Serialize(object)

Declaration
protected abstract byte[] Serialize(object eventData)
Parameters
Type Name Description
object eventData
Returns
Type Description
byte[]

Subscribe<TEvent>(IDistributedEventHandler<TEvent>)

Declaration
public IDisposable Subscribe<TEvent>(IDistributedEventHandler<TEvent> handler) where TEvent : class
Parameters
Type Name Description
IDistributedEventHandler<TEvent> handler
Returns
Type Description
IDisposable
Type Parameters
Name Description
TEvent

TriggerDistributedEventReceivedAsync(DistributedEventReceived)

Declaration
public virtual Task TriggerDistributedEventReceivedAsync(DistributedEventReceived distributedEvent)
Parameters
Type Name Description
DistributedEventReceived distributedEvent
Returns
Type Description
Task

TriggerDistributedEventSentAsync(DistributedEventSent)

Declaration
public virtual Task TriggerDistributedEventSentAsync(DistributedEventSent distributedEvent)
Parameters
Type Name Description
DistributedEventSent distributedEvent
Returns
Type Description
Task

TriggerHandlersDirectAsync(Type, object)

Declaration
protected virtual Task TriggerHandlersDirectAsync(Type eventType, object eventData)
Parameters
Type Name Description
Type eventType
object eventData
Returns
Type Description
Task

TriggerHandlersFromInboxAsync(Type, object, List<Exception>, InboxConfig?)

Declaration
protected virtual Task TriggerHandlersFromInboxAsync(Type eventType, object eventData, List<Exception> exceptions, InboxConfig? inboxConfig = null)
Parameters
Type Name Description
Type eventType
object eventData
List<Exception> exceptions
InboxConfig inboxConfig
Returns
Type Description
Task

Implements

IDistributedEventBus
IEventBus
ISupportsEventBoxes

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>>)
AbpOpenIddictQueryableExtensions.SkipIf<T, TQueryable>(TQueryable, bool, int?)
AbpOpenIddictQueryableExtensions.TakeIf<T, TQueryable>(TQueryable, bool, int?)
LockExtensions.Locking<T>(T, Action<T>)
LockExtensions.Locking<T, TResult>(T, Func<T, TResult>)
AbpDistributedEventBusExtensions.AsSupportsEventBoxes(IDistributedEventBus)
In this article
Back to top Powered by ABP.IO Platform