2014-10-31 72 views
2

我有我通過下面的腳本來啓動騾子流量:如何找出騾子流狀態

muleContext.registry.lookupFlowConstruct('targetFlow').start() 

不過,我想了一個執行腳本只有當流量停止。我有什麼方法可以在開始之前在腳本中檢查這個嗎?

回答

4

您可以使用此方法來驗證流是否已啓動。我希望能幫助你。

AbstractFlowConstruct f = (AbstractFlowConstruct) muleContext.getRegistry().lookupFlowConstruct("flowName");   
    if (f.isStopped()){ 
     // start flow 
    } 
// it can also be used : f.isStarted() 
+0

許多感謝的最簡單方法胡里奧! – Andres 2014-11-04 14:05:12

3

或者您可以使用Groovy的組件,檢查其狀態,並把你的簡單腳本如下: -

<scripting:component doc:name="Groovy"> 
       <scripting:script engine="Groovy"><![CDATA[ 
      if(muleContext.registry.lookupFlowConstruct('yourFlowName').isStopped()) 
       { 
        muleContext.registry.lookupFlowConstruct('yourFlowName').start(); 

       } 
      return message.payload; 
       ]]> 
       </scripting:script> 
    </scripting:component> 

注意Groovy腳本是實現這一