现在要做一个东西,需要维护事务的状态,状态和出发条件都是有限的,能不能用配置文件控制状态的转换?

解决方案 »

  1.   

    <states>
    <state>
    <original>ORIGINAL_STATE1</original>
    <trigger>TRIGGER1</trigger>
    <target>TARGET_STATE1</target>
    </state>
    <state>
    <original>ORIGINAL_STATE2</original>
    <trigger>TRIGGER2</trigger>
    <target>TARGET_STATE2</target>
    </state>
    <state> <!-- 这个作为创建某个事务的逻辑-->
    <original/> <!--原始状态为空-->
    <trigger>TRIGGER3</trigger>
    <target>TARGET_STATE3</target>
    </state>
    <state> <!-- 这个作为终止某个事务的逻辑-->
    <origina l>ORIGINAL_STATE4</original>
    <trigger>TRIGGER4</trigger>
    <target/> <!-- 目标状态为空-->
    </state> <!--…….-->
    </states>呵呵,表达能力太差
    现在我自己写出来了,不过有个条件没有满足,详细说下:
    某个状态,假设是State,在某个触发条件下(假设是Trigger),最多能够循环N次,在这个触发事件发生第N+1次时转换到另一个状态,怎么配置出这样个东西?