Axon -调用后的MessageHandlerInterceptor处理程序。

根据文档, “MessageHandlerInterceptor可以在调用之前和之后为消息处理程序的调用添加自定义行为”。

只有在处理程序调用工作之前(handle方法)。

如何使用它来拦截@EventHandler的调用?方法调用后 在我的事件处理器类(@ProcessingGroup)上?

我使用的是Axon 4.3.1。

谢谢你。

解决方案:

当实现一个 MessageHandlerInterceptor,你需要实现以下方法。

Object handle(
    UnitOfWork<? extends T> unitOfWork, 
    InterceptorChain interceptorChain
) throws Exception;

当涉及到在消息处理前后调用操作时,关键在于 您与 InterceptorChain.The InterceptorChain 连串 MessageHandlerInterceptor 的实例。因此,调用 interceptorChain.proceed() 会告诉链子移动到下面的拦截器。如果到达链的末端,Axon将转移到你自己编写的消息处理函数上。

因此,在执行工作时 之后interceptorChain.proceed() 意味着你在注解的方法调用后执行工作。

你可以看到Axon是如何在 LoggingInterceptor你可以找到 此处.

给TA打赏
共{{data.count}}人
人已打赏
未分类

在Shiny应用中,当使用刷子和缩放时,DT表的搜索框缺失。

2022-9-8 19:26:22

未分类

C#使用加密密码进行电子邮件的Ssl认证。

2022-9-8 19:37:17

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索