init
This commit is contained in:
49
DouyinApi.EventBus/Eventbus/IEventBus.cs
Normal file
49
DouyinApi.EventBus/Eventbus/IEventBus.cs
Normal file
@@ -0,0 +1,49 @@
|
||||
namespace DouyinApi.EventBus
|
||||
{
|
||||
/// <summary>
|
||||
/// 事件总线
|
||||
/// 接口
|
||||
/// </summary>
|
||||
public interface IEventBus
|
||||
{
|
||||
/// <summary>
|
||||
/// 发布
|
||||
/// </summary>
|
||||
/// <param name="event">事件模型</param>
|
||||
void Publish(IntegrationEvent @event);
|
||||
|
||||
/// <summary>
|
||||
/// 订阅
|
||||
/// </summary>
|
||||
/// <typeparam name="T">约束:事件模型</typeparam>
|
||||
/// <typeparam name="TH">约束:事件处理器<事件模型></typeparam>
|
||||
void Subscribe<T, TH>()
|
||||
where T : IntegrationEvent
|
||||
where TH : IIntegrationEventHandler<T>;
|
||||
|
||||
/// <summary>
|
||||
/// 取消订阅
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
/// <typeparam name="TH"></typeparam>
|
||||
void Unsubscribe<T, TH>()
|
||||
where TH : IIntegrationEventHandler<T>
|
||||
where T : IntegrationEvent;
|
||||
|
||||
/// <summary>
|
||||
/// 动态订阅
|
||||
/// </summary>
|
||||
/// <typeparam name="TH">约束:事件处理器</typeparam>
|
||||
/// <param name="eventName"></param>
|
||||
void SubscribeDynamic<TH>(string eventName)
|
||||
where TH : IDynamicIntegrationEventHandler;
|
||||
|
||||
/// <summary>
|
||||
/// 动态取消订阅
|
||||
/// </summary>
|
||||
/// <typeparam name="TH"></typeparam>
|
||||
/// <param name="eventName"></param>
|
||||
void UnsubscribeDynamic<TH>(string eventName)
|
||||
where TH : IDynamicIntegrationEventHandler;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user