我正在使用
vertx-rx-java
我有两个verticles,它们使用EventBus相互通信,其中一个verticles返回复杂对象作为结果,为此我创建了custom
MessageCodec
EventBus
.
在标准中
io.vertx.core.eventbus.EventBus
有一种方法
registerCodec
事件总线
.
但是因为我用的是
io.vertx.rxjava.core.Vertx
vertx.eventBus()
我收到
io.vertx.rxjava.core.eventbus.EventBus
,没有这样的方法。从rxjava中删除这个方法的目的是什么
事件总线
,在使用rxjava时使用自定义编解码器是否被认为是不好的做法?如果是,建议采用什么方法?
添加我找到的自定义编解码器的唯一方法是调用
eventBus.getDelegate()
:
EventBus eb = vertx.eventBus();
((io.vertx.core.eventbus.EventBus) eb.getDelegate()).registerCodec(new StringMessageCodec());