Interface EventPublisher
public interface EventPublisher
事件发布器接口 - 定义事件发布的标准API
- Since:
- 1.0.0
- Version:
- 1.0.0
- Author:
- Berry_so
-
Method Summary
Modifier and TypeMethodDescription<T> EventResultpublish(T event) 同步发布事件<T> EventResultpublish(T event, EventMetadata metadata) 同步发布事件(带元数据)default <T> EventResultpublishAndWait(T event, long timeoutMs) 发布事件并等待所有处理器完成publishAsync(T event) 异步发布事件publishAsync(T event, EventMetadata metadata) 异步发布事件(带元数据)default CompletableFuture<List<EventResult>> publishBatch(List<?> events) 批量发布多个事件
-
Method Details
-
publish
同步发布事件- Type Parameters:
T- 事件类型- Parameters:
event- 要发布的事件对象- Returns:
- 事件处理结果
- Throws:
EventPublishException- 发布失败时抛出
-
publish
同步发布事件(带元数据)- Type Parameters:
T- 事件类型- Parameters:
event- 要发布的事件对象metadata- 事件元数据- Returns:
- 事件处理结果
- Throws:
EventPublishException- 发布失败时抛出
-
publishAsync
异步发布事件- Type Parameters:
T- 事件类型- Parameters:
event- 要发布的事件对象- Returns:
- 包含事件处理结果的 CompletableFuture
-
publishAsync
异步发布事件(带元数据)- Type Parameters:
T- 事件类型- Parameters:
event- 要发布的事件对象metadata- 事件元数据- Returns:
- 包含事件处理结果的 CompletableFuture
-
publishBatch
批量发布多个事件- Parameters:
events- 事件列表- Returns:
- 包含所有事件处理结果的 CompletableFuture
-
publishAndWait
default <T> EventResult publishAndWait(T event, long timeoutMs) throws TimeoutException, EventPublishException 发布事件并等待所有处理器完成- Type Parameters:
T- 事件类型- Parameters:
event- 要发布的事件对象timeoutMs- 超时时间(毫秒)- Returns:
- 事件处理结果
- Throws:
TimeoutException- 超时时抛出EventPublishException- 发布失败时抛出
-