可以使用devkit来制作示波器,组件或变换器吗?

时间:2014-10-06 18:33:09

标签: mule mule-component

我想在devkit中创建除连接器之外的其他东西。那可能吗?最简单的例子是创建一个No-Op进入那些不可能是空的“否则”选择分支。我还认为锁定范围是有用的,因此流程的一部分只能一次执行一次。谢谢!

1 个答案:

答案 0 :(得分:2)

您可以通过仅使用“配置”字段创建@Connector并且不进行连接管理来创建组件。如果您使用的是DevKit插件,则可以选择您想要的身份验证,这将创建一个具有@Configuration连接策略的无状态连接器。

此外,您可以在连接器中创建@Transformer。这个github project有一个简单的连接器,可以在其上定义几个变换器。

您可以在其他分支上放置空记录器,或者根据需要创建No-Op。

关于你的锁定范围,我不能100%确定我们是否可以这样做,但我认为如果你使用拦截标志配置你的@Processor,你的@Processor将能够执行以下链并获得结果。

类似的东西:

@Processor(intercepting = true)
public Object shouldContinue(boolean cont, SourceCallback afterChain) throws Exception {
    if (cont) {
        return afterChain.process();
    }
    return null;
}

在这个示例中,cont只是您在@Processor上的一个可配置标志,您决定是否要执行链的其余部分。

如果您需要MuleEvent:

@Inject
@Processor(intercepting = true)
public MuleEvent shouldContinueFullEvent(boolean cont, MuleEvent muleEvent, SourceCallback afterChain) throws Exception {
    if (cont) {
        return afterChain.processEvent(muleEvent);
    }
    return null;
}