如何在Mule4中使用groovy脚本更改流的状态?

fdbelqdn  于 2022-09-21  发布在  其他
关注(0)|答案(1)|浏览(160)

我有两个流,流1和流2。

流程1

  • http侦听器-接收来自外部系统的请求。
  • groovy脚本(更改流2的初始状态)

流程2

  • JMS在新消息上,从队列中读取新消息。
  • 调用系统接口的http请求。

问:流程1步骤2-Groovy脚本这可能吗?

bqjvbblv

bqjvbblv1#

是的,正如本文所解释的那样:How To Stop Or Start Flows In Mule 4.x Programmatically是可能的
您需要执行以下步骤:

1.如果您之前没有添加脚本模块,请将其添加到您的项目中。
1.添加脚本,脚本如下:

<scripting:execute engine="groovy" doc:name="Toggle flow">
    <scripting:code>
      flow = registry.lookupByName(&quot;flowName&quot;).get();
      if (flow.isStarted())
        flow.stop()
      else 
        flow.start()
    </scripting:code> 
</scripting:execute>

如果没有启动,该脚本将启动名为“lowName”的流,否则将停止它。请用您希望启动/停止的流的实际名称或变量替换“lowName”。

相关问题