public interface EventBus
Topic| 限定符和类型 | 方法和说明 |
|---|---|
<T> reactor.core.publisher.Mono<Long> |
publish(String topic,
Encoder<T> encoder,
org.reactivestreams.Publisher<? extends T> eventStream)
推送消息流,并指定编码器用于进行事件序列化
|
<T> reactor.core.publisher.Mono<Long> |
publish(String topic,
Encoder<T> encoder,
org.reactivestreams.Publisher<? extends T> eventStream,
reactor.core.scheduler.Scheduler scheduler)
推送消息流,并指定编码器用于进行事件序列化
|
default <T> reactor.core.publisher.Mono<Long> |
publish(String topic,
Encoder<T> encoder,
T event)
推送单个数据到事件总线中,并指定编码器用于将事件数据进行序列化
|
default <T> reactor.core.publisher.Mono<Long> |
publish(String topic,
Encoder<T> encoder,
T event,
reactor.core.scheduler.Scheduler scheduler) |
default reactor.core.publisher.Mono<Long> |
publish(String topic,
Payload event) |
default reactor.core.publisher.Mono<Long> |
publish(String topic,
Payload event,
reactor.core.scheduler.Scheduler scheduler) |
<T> reactor.core.publisher.Mono<Long> |
publish(String topic,
org.reactivestreams.Publisher<T> event)
推送消息流到事件总线,并返回有多少订阅者订阅了此topic,默认自动根据元素类型进行序列化
|
default <T> reactor.core.publisher.Mono<Long> |
publish(String topic,
T event)
推送单个数据到事件流中,默认自动根据事件类型进行序列化
|
default <T> reactor.core.publisher.Mono<Long> |
publish(String topic,
T event,
reactor.core.scheduler.Scheduler scheduler) |
reactor.core.publisher.Flux<TopicPayload> |
subscribe(Subscription subscription)
从事件总线中订阅事件
特别注意!!!
|
default <T> reactor.core.publisher.Flux<T> |
subscribe(Subscription subscription,
Class<T> type)
订阅主题并将事件数据转换为指定的类型
|
<T> reactor.core.publisher.Flux<T> |
subscribe(Subscription subscription,
Decoder<T> decoder)
从事件总线中订阅事件,并按照指定的解码器进行数据转换
|
reactor.core.publisher.Flux<TopicPayload> subscribe(Subscription subscription)
特别注意!!!
如果没有调用
TopicPayload.bodyToString(),
Payload.bodyToJson(),
Payload.bodyToJsonArray(),
Payload.getBytes()
使用TopicPayload后需要手动调用TopicPayload.release()释放.
subscription - 订阅信息<T> reactor.core.publisher.Flux<T> subscribe(Subscription subscription, Decoder<T> decoder)
T - 解码后结果类型subscription - 订阅信息decoder - 解码器<T> reactor.core.publisher.Mono<Long> publish(String topic, org.reactivestreams.Publisher<T> event)
T - 事件流元素类型topic - topicevent - 事件流<T> reactor.core.publisher.Mono<Long> publish(String topic, Encoder<T> encoder, org.reactivestreams.Publisher<? extends T> eventStream)
T - 类型topic - topicencoder - 编码器eventStream - 事件流<T> reactor.core.publisher.Mono<Long> publish(String topic, Encoder<T> encoder, org.reactivestreams.Publisher<? extends T> eventStream, reactor.core.scheduler.Scheduler scheduler)
T - voidtopic - topicencoder - 编码器eventStream - 事件流scheduler - 调度器default <T> reactor.core.publisher.Flux<T> subscribe(Subscription subscription, Class<T> type)
T - 类型subscription - 订阅信息type - 类型default <T> reactor.core.publisher.Mono<Long> publish(String topic, Encoder<T> encoder, T event)
T - 事件类型topic - 主题encoder - 编码器event - 事件数据default <T> reactor.core.publisher.Mono<Long> publish(String topic, Encoder<T> encoder, T event, reactor.core.scheduler.Scheduler scheduler)
default <T> reactor.core.publisher.Mono<Long> publish(String topic, T event)
T - 事件类型topic - 主题event - 事件数据default <T> reactor.core.publisher.Mono<Long> publish(String topic, T event, reactor.core.scheduler.Scheduler scheduler)
Copyright © 2019–2022. All rights reserved.