目录


mac-flow - “make money” 示例

  此示例演示了以下功能:
  流程图如下:

make money

  生成的XML如下: <bean id="makeMoneyService" parent="simpleFlowService"> <property name="flowId" value="makeMoney"/> </bean> <bean id="makeMoney" parent="simpleFlow" > <property name="flowId" value="makeMoney" /> <property name="mutex" value="false" /> <property name="entry" value="fork" /> </bean> <bean id="makeMoney-make" parent="processNode"> <property name="handler"> <bean class="com.boarsoft.flow.demo.make.MakeMoneyHandlerImpl"> </bean> </property> <property name="next" value="commitTx" /> </bean> <bean id="makeMoney-fork" parent="forkNode"> <property name="join" value="join" /> <property name="handler"> <bean class="com.boarsoft.flow.demo.make.MakeMoneyForkHandlerImpl"> </bean> </property> <property name="branches"> <set> <value>try</value> </set> </property> </bean> <bean id="makeMoney-join" parent="joinNode"> <property name="handler"> <bean class="com.boarsoft.flow.demo.make.MakeMoneyJoinHandlerImpl"> </bean> </property> <property name="next" value="check" /> </bean> <bean id="makeMoney-check" parent="judgeNode"> <property name="expression" value="money >= 10000" /> <!-- 当 money>=10000 时退出循环 --> <property name="yes" value="end" /> <!-- 当 money<10000 时回到前面的fork节点,继续执行 --> <property name="no" value="fork" /> </bean> <bean id="makeMoney-try" parent="tryNode"> <property name="next" value="beginTx" /> <property name="catch" value="catch" /> <property name="yrt" value="yrt" /> </bean> <bean id="makeMoney-catch" parent="catchNode"> <property name="next" value="fail" /> </bean> <bean id="makeMoney-yrt" parent="yrtNode"> <property name="next" value="join" /> </bean> <bean id="makeMoney-fail" parent="processNode"> <property name="handler"> <bean class="com.boarsoft.flow.demo.make.MakeMoneyFailHandlerImpl"> </bean> </property> <property name="next" value="yrt" /> </bean> <bean id="makeMoney-beginTx" parent="beginTxNode"> <property name="handler"> <bean class="com.boarsoft.flow.demo.make.FakeTxHandlerImpl"> </bean> </property> <property name="commitTx" value="commitTx" /> <property name="next" value="make" /> </bean> <bean id="makeMoney-commitTx" parent="commitTxNode"> <property name="next" value="catch" /> </bean>