• osworkflow


    调用接口中的参数和方法详解 
    Input Map 
    workflow的initialize、doAction,还有wf.getAvailableActions(id, map)方法都有一个HashMap
    类型的参数,是用来传递工作流中所需要的数据或者对象的,其有效范围只包括当前步骤或
    者下一步的 pre-function。可应用在function,condition,validator等当中。 
    Workflow接口里面的主要方法 
    getAvailableActions(id, null) 
    得到当前工作流实例所有有效动作. 
    第一个参数:工作流实例ID 
    第二个参数:要传递的对象 
    getCurrentSteps(id) 
    根据工作流实例ID得到所有当前步骤. 
    getEntryState(id) 
    根据工作流实例ID得到所有当前实例状态. 
    getHistorySteps(id) 
    根据工作流实例ID得到所有历史步骤. 
    getPropertySet(id) 
    根据工作流实例ID得到PropertySet对象. 
    getSecurityPermissions(id) 
    根据工作流实例ID得到当前状态权限列表. 
    getWorkflowDescriptor(id) 
    根据工作流实例ID得到工作流XML描述文件对象. 
    getWorkflowName(id) 
    根据工作流实例ID得到当前实例名称. 
    getWorkflowNames() 
    得到所有的工作流程名称 
     
    WorkflowDescriptor对象里面的主要方法 
    getAction(id) 
    根据动作ID得到当前动作描述信息.有三种类型:初始
    化动作;全局动作;步骤中的一般动作。 
    getCommonActions() 
    得到通用动作列表. 
    getGlobalActions() 
    得到全局动作列表.3 
    getGlobalConditions() 
    得到全局条件列表. 
    getInitialAction(id) 
    根据初始动作ID得到初始动作描述信息. 
    getInitialActions() 
    得到所有初始动作描述信息. 
    getJoin(id) 
    根据Join ID得到相应Join描述信息. 
    getJoins() 
    得到所有Join描述信息. 
    getName() 
    得到工作流程描述文件名称. 
    getRegisters() 
    得到所有的注册器. 
    getSplit(id) 
    根据Split ID得到相应Split描述信息. 
    getSplits() 
    得到所有Split描述信息. 
    getStep(id) 
    根据Step ID得到相应Step描述信息. 
    getSteps() 
    得到所有Step描述信息. 
    getTriggerFunction(id) 
    根据TriggerFunction ID得到相应TriggerFunction描述
    信息. 
    getTriggerFunctions() 
    得到所有TriggerFunction描述信息. 

    调用接口中的参数和方法详解 
    Input Map 
    workflow的initialize、doAction,还有wf.getAvailableActions(id, map)方法都有一个HashMap类型的参数,是用来传递工作流中所需要的数据或者对象的,其有效范围只包括当前步骤或者下一步的 pre-function。可应用在function,condition,validator等当中。 
    Workflow接口里面的主要方法 
    getAvailableActions(id, null) 
    得到当前工作流实例所有有效动作. 
    第一个参数:工作流实例ID 
    第二个参数:要传递的对象 
    getCurrentSteps(id) 
    根据工作流实例ID得到所有当前步骤. 
    getEntryState(id) 
    根据工作流实例ID得到所有当前实例状态. 
    getHistorySteps(id) 
    根据工作流实例ID得到所有历史步骤. 
    getPropertySet(id) 
    根据工作流实例ID得到PropertySet对象. 
    getSecurityPermissions(id) 
    根据工作流实例ID得到当前状态权限列表. 
    getWorkflowDescriptor(id) 
    根据工作流实例ID得到工作流XML描述文件对象. 
    getWorkflowName(id) 
    根据工作流实例ID得到当前实例名称. 
    getWorkflowNames() 
    得到所有的工作流程名称 


     
    WorkflowDescriptor对象里面的主要方法 
    getAction(id) 
    根据动作ID得到当前动作描述信息.有三种类型:初始化动作;全局动作;步骤中的一般动作。 
    getCommonActions() 
    得到通用动作列表. 
    getGlobalActions() 
    得到全局动作列表.3 
    getGlobalConditions() 
    得到全局条件列表. 
    getInitialAction(id) 
    根据初始动作ID得到初始动作描述信息. 
    getInitialActions() 
    得到所有初始动作描述信息. 
    getJoin(id) 
    根据Join ID得到相应Join描述信息. 
    getJoins() 
    得到所有Join描述信息. 
    getName() 
    得到工作流程描述文件名称. 
    getRegisters() 
    得到所有的注册器. 
    getSplit(id) 
    根据Split ID得到相应Split描述信息. 
    getSplits() 
    得到所有Split描述信息. 
    getStep(id) 
    根据Step ID得到相应Step描述信息. 
    getSteps() 
    得到所有Step描述信息. 

    getTriggerFunction(id) 
    根据TriggerFunction ID得到相应TriggerFunction描述信息. 
    getTriggerFunctions() 
    得到所有TriggerFunction描述信息. 

    的位置没有先后顺序,可以放在其前,也可放在其后,也可放在中间。

    <common-actions>

    <action id="1001" name="发布通知">

    <results>

    <unconditional-result old-status="Finished" status="Underway" step="-1">

    <post-functions>

    <function type="beanshell">

    <arg name="script"> 47

    System.out.println("发布通知。。。");

    OSWorkflow 开发指南 Version 1.0

    October 15, 2007 So many open source projects. Why not Open your Documents?

    </arg>

    </function>

    </post-functions>

    </unconditional-result>

    </results>

    </action>

    </common-actions>

    ………………………………………..

    <actions>

    <common-action id="1001"/>

    ……………………………………….

    </actions>

    自动动作

    只要满足条件,动作将会自动执行(auto action)。如果有两个自动动作都符合条件,优先执行配置在前面的自动动作;如果说上下两个相连的步骤里都有符合条件的自动动作,且上一步骤里面自动动作的结果指向下一步骤,将连续执行;如果自动动作执行以后步骤不发生改变,可以手动执行其它未执行的非自动动作;如果自动动作执行以后步骤发生改变,将直接跳到结果里所指向的相应步骤。

    以下是一个典型的例子:

    <?xml version="1.0" encoding="UTF-8"?>

    <!DOCTYPE workflow PUBLIC "-//OpenSymphony Group//DTD OSWorkflow 2.6//EN" "http://www.opensymphony.com/osworkflow/workflow_2_6.dtd">

    <workflow>

    <initial-actions>

    <action id="100" name="Start Workflow">

    <pre-functions>

    <function type="class">

    <arg name="class.name">

    com.opensymphony.workflow.util.Caller

    </arg>

    </function>

    </pre-functions>

    <results>

    <unconditional-result old-status="Finished" status="Underway" step="1" owner="${caller}"/>

    </results>

    </action>

    </initial-actions>

    <steps>

    <step id="1" name="First Step">

    <actions> 48

    <action id="1" name="The first action">

    OSWorkflow 开发指南 Version 1.0

    October 15, 2007 So many open source projects. Why not Open your Documents?

    <results>

    <unconditional-result old-status="Finished" status="Queued" step="2"/>

    </results>

    </action>

    <action id="2" name="The second action" auto="true">

    <restrict-to>

    <conditions type="AND">

    <condition type="class">

    <arg name="status">Underway</arg>

    <arg name="class.name">

    com.opensymphony.workflow.util.StatusCondition

    </arg>

    </condition>

    </conditions>

    </restrict-to>

    <results>

    <unconditional-result old-status="Finished" status="Queued" step="1"/>

    </results>

    </action>

    </actions>

    </step>

    <step id="2" name="Sencond Step">

    <actions>

    <action id="3" name="The third action">

    <restrict-to>

    <conditions type="AND">

    <condition type="class">

    <arg name="status">Queued</arg>

    <arg name="class.name">

    com.opensymphony.workflow.util.StatusCondition

    </arg>

    </condition>

    </conditions>

    </restrict-to>

    <results>

    <unconditional-result old-status="Finished" status="Finished" step="2"/>

    </results>

    </action>

    </actions>

    </step> 49

    </steps>

    </workflow>

  • 相关阅读:
    C# WebSocket 实现客户端和服务端的通信(二)
    C# WebSocket 实现客户端和服务端的通信(一)
    regsvr32 将dll写入注册表
    Dictionary 添加重复的键值对
    C# Math.Round()的银行家算法
    DataGridView 合并数据相同的行
    获取系统当前日期,分布获取年月日和时分秒
    [Err] ORA-00923: 未找到要求的 FROM 关键字
    正则表达式常用的字符类
    Spring注解作用
  • 原文地址:https://www.cnblogs.com/yangy608/p/1778653.html
Copyright © 2020-2023  润新知