Around 增强点
节点环绕通知(Around Advice):在节点OnMsg方法执行之前和之后执行。该类型增强点,可以替换原节点逻辑。可以实现节点故障转移、重试、缓存等功能。
Before、After、Around Advice 执行顺序:Around->Before->Around
# 接口
// Order 返回执行顺序,值越小,优先级越高
Order() int
// 规则链初始化时候会调用该方法创建新的实例,如果字段值需要继承,在这里处理
New() Aspect
// PointCut 声明一个切入点,用于判断是否需要执行增强点
//例如:指定某些组件类型或者relationType才执行切面逻辑;return ctx.Self().Type()=="mqttClient"
PointCut(ctx RuleContext, msg RuleMsg, relationType string) bool
//Around 节点 OnMsg 方法执行环绕的增强点。返回的Msg将作为下一个增强点和下一个节点 OnMsg 方法的入参。
//如果返回false:引擎不会调用下一个节点的OnMsg方法,需要切面执行tellNext方法,否则规则链不会结束。
//如果返回true:引擎会调用下一个节点的OnMsg方法。
Around(ctx RuleContext, msg RuleMsg, relationType string) (RuleMsg, bool)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
在 GitHub 上编辑此页 (opens new window)
上次更新: 2024/06/25, 11:16:12