@Controller
class EventBusHandler : Handler<RoutingContext> {
companion object {
private var log:Logger=LogManager.getLogger(this.javaClass.name)
}
@Autowired
private lateinit var eventBus:EventBus
override fun handle(event: RoutingContext) {
//先创建消费者 再进行发送消息
try {
//消费信息
eventBus.consumer<String>("abc"){
log.info("----->信息为:"+it.body())
it.reply("我收到了")
if(it.isSend){
log.info("发送了")
}else{
log.info("未发送")
}
}
//发送消息
eventBus.send<String>("abc","加油呀"){res->
try {
if(res.failed()) log.error("发送 eventBus 消息失败 ${res.cause().message}")
else {
if (res.result().body()=="我收到了"){
log.info("---------->我收到信息了")
}
log.info("》》》》》》》》向 [ abc ] 发送 eventBus 消息成功")}
} catch (e: Exception) {
e.printStackTrace()
}
}
} catch (e: Exception) {
e.printStackTrace()
}
}