Vert.x技巧:使用EventBus Interceptor拦截消息

Vert.x用久了肯定有这样的想法:拦截EventBus上发送的所有消息。这个需求用Vertx EventBus Interceptor可以非常简单的实现,可惜的是,Vert.x文档却并没有明确的指出来。

其实它的使用很简单,直接看代码吧(Groovy代码):

vertx.eventBus().addInterceptor { sendContext ->
    Message message = sendContext.message()
    // 自由发挥……

    sendContext.next()
}

最后的那句 sendContext.next() 非常关键:如果没写,后续的consumer将无法收到刚刚被你拦截的消息!所以,一定要确保你是有意不写的。

其他的就没什么可说得了,基本跟其他工具提供的拦截器的功能类似,查查api文档,看看代码,都能搞清楚。

相关文章

背景:    8月29日,凌晨4点左右,某服务告警,其中一个...
https://support.smartbear.comeadyapi/docs/soapui/steps/g...
有几个选项可用于执行自定义JMeter脚本并扩展基线JMeter功能...
Scala和Java为静态语言,Groovy为动态语言Scala:函数式编程,...
出处:https://www.jianshu.com/p/ce6f8a1f66f4一、一些内部...
在运行groovy的junit方法时,报了这个错误:java.lang.Excep...