Java
Bus
消息总线接口,定义了消息的发布、发送和请求-响应调用的核心契约。
- Type interface
- Package:
com.euonia.bus - Author: damon(zhaorong@outlook.com)
Description¶
提供三种消息传递模式:
- 发布/订阅(Publish) — 通过
publish构建器将多播消息发送到所有订阅者 - 发送/命令(Send) — 通过
send构建器将单播消息发送到单个处理程序 - 请求/响应(Call) — 通过
call构建器发送请求并期待类型化的响应
Methods¶
publish¶
创建发布/订阅模式的 Builder。
- Parameters:
message(T): 要发布的消息- Returns:
PublishBuilder<T>- PublishBuilder 实例
send¶
创建发送/命令模式的 Builder(不关心响应类型)。
- Parameters:
message(T): 要发送的消息- Returns:
SendBuilder<T, Void>- SendBuilder 实例
send¶
创建发送/命令模式的 Builder(指定响应类型)。
- Parameters:
message(T): 要发送的消息responseType(Class<R>): 期望的响应类型- Returns:
SendBuilder<T, R>- SendBuilder 实例
call¶
创建请求/响应模式的 Builder。
- Parameters:
request(T): 请求消息responseType(Class<R>): 期望的响应类型- Returns:
CallBuilder<T, R>- CallBuilder 实例
publishAsync¶
以发布/订阅模式异步发布一条多播消息(完整参数版本)。
- Parameters:
message(T): 要发布的消息options(PublishOptions): 发布选项behavior(Consumer<PipelineMessage<RoutedMessage<T>, Void>>): 可选的管道行为配置回调,可以为null- Returns:
CompletableFuture<Void>- 在所有传输实例完成发送后完成的 future
sendAsync¶
以发送/命令模式异步发送一条单播消息并等待响应(完整参数版本)。
- Parameters:
message(T): 要发送的消息responseType(Class<R>): 期望的响应类型callback(Flow.Subscriber<R>): 可选的回调,用于接收响应或错误sendOptions(SendOptions): 发送选项behavior(Consumer<PipelineMessage<RoutedMessage<T>, R>>): 可选的管道行为配置回调,可以为null- Returns:
CompletableFuture<Void>- 在消息处理完毕时完成的 future
callAsync¶
以请求/响应模式异步发送一条请求消息并期待类型化的响应(完整参数版本)。
- Parameters:
request(T): 请求消息responseType(Class<R>): 期望的响应类型callOptions(CallOptions): 调用选项behavior(Consumer<PipelineMessage<RoutedMessage<T>, R>>): 可选的管道行为配置回调,可以为null- Returns:
CompletableFuture<R>- 在收到响应时完成并携带响应结果的 future
publishAsync¶
以发布/订阅模式异步发布一条多播消息。
- Parameters:
message(T): 要发布的消息- Returns:
CompletableFuture<Void>- 在所有传输实例完成发送后完成的 future
sendAsync¶
以发送/命令模式异步发送一条单播消息并等待响应。
- Parameters:
message(T): 要发送的消息- Returns:
CompletableFuture<Void>- 在消息处理完毕时完成的 future
sendAsync¶
以发送/命令模式异步发送一条单播消息并等待响应。
- Parameters:
message(T): 要发送的消息responseType(Class<R>): 期望的响应类型callback(Flow.Subscriber<R>): 可选的回调,用于接收响应或错误- Returns:
CompletableFuture<Void>- 在消息处理完毕时完成的 future
callAsync¶
以请求/响应模式异步发送一条请求消息并期待类型化的响应。
- Parameters:
request(T): 请求消息responseType(Class<R>): 期望的响应类型- Returns:
CompletableFuture<R>- 在收到响应时完成并携带响应结果的 future