ofbiz工作流源代码学习(2)--WfExecutionObject接口

原创 2004年04月07日 14:35:00

WfExecutionObject接口与实现

1.概述

WfExecutionObject接口是一个抽象基类接口,它定义了WfProcessWfActivity公有的属性,状态和操作。WfExecutionObject的操作返回的状态与流程状态是不同的。WfExecutionObject提供了方法来获取当前的状态并完成从当前状态向另一状态的转变。但WfExecutionObject的状态是执行对象的状态,WfProcess的状态是流程的状态,他们之间并没有必然的关系。

 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

2.属性及相应方法

2.1 name

   name属性是工作流执行对象的描述性名字,name属性的获取和设置是通过GenericDelegatorworkEffortId来完成的:

    public String name() throws WfException {

        return getRuntimeObject().getString("workEffortName");

    }

    public void setName(String newValue) throws WfException {

        GenericValue dataObject = getRuntimeObject();

        try {

            dataObject.set("workEffortName", newValue);

            dataObject.store();

        } catch (GenericEntityException e) {

            throw new WfException(e.getMessage(), e);

        }

    }

  

2.2 key

   key是工作流执行对象的唯一标示符。一个特定的工作流管理器产生的流程集合中,每个流程都有一个唯一的key;一个流程包含的活动集合中,每个活动都有一个唯一的key。当工作流执行对象产生时,由工作流管理器为它分配一个特定的key

   Key不同于对象标示符,它是工作流执行对象生命周期中流程或活动的reference。它由activityIdprocessId来表示。

2.3 process_context

   process_context是定义执行对象环境的流程相关数据,它由一系列的名字属性来描述。process_context由一系列的名值对来表达,process_context的获取和设置是通过runtimeDataIdGenericValue来实现的。

2.4 priority

   priority的有效值在05之间,一个为highest,三个为normal,另外一个为其它情况。

2.5 last_state_time

   表示上次状态改变的时间,如下:

    public Timestamp lastStateTime() throws WfException {

        GenericValue dataObject = getRuntimeObject();

 

        if (dataObject == null || dataObject.get("lastStatusUpdate") == null)

            throw new WfException("No runtime object or status has never been set.");

        return dataObject.getTimestamp("lastStatusUpdate");

}

 

3.状态

   总的状态分为openclosed

   Open分为open.runningopen.not_running

   Open.not_running分为not_running.not_startednot_running.suspended

   Closed分为closed.completedclosed.terminatedclosed.aborted

   not_running.suspendedopen.running应该用resume()方法。另外调用terminate()方法,abort()方法或complete()方法,suspend()方法可以到相应的状态。当然了,最通用的改变状态的方法是用changeState(int state)方法。

 

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

ofbiz工作流源代码学习(2)--WfExecutionObject接口

WfExecutionObject接口与实现1.概述WfExecutionObject接口是一个抽象基类接口,它定义了WfProcess和WfActivity公有的属性,状态和操作。WfExecu...
  • softstars
  • softstars
  • 2008年06月10日 16:50
  • 200

ofbiz工作流源代码学习(1)---WfRequester接口

WfRequester接口与实现WfRequester接口是一个和工作流流程的执行及结果有直接关系的接口,它代表了对要做的工作的请求。 知识点:WfRequester接口的performer是Wf...
  • softstars
  • softstars
  • 2008年06月10日 16:50
  • 139

ofbiz工作流源代码学习(1)---WfRequester接口

WfRequester接口与实现WfRequester接口是一个和工作流流程的执行及结果有直接关系的接口,它代表了对要做的工作的请求。 知识点:WfRequester接口的performer是WfPr...
  • hongbo781202
  • hongbo781202
  • 2004年04月07日 14:35
  • 2995

ofbiz工作流源代码学习(3)--WfProcessMgr接口

WfProcessMgr接口工作流管理器(WfProcessMgr)代表了一个特定流程的模板,它用来创建工作流流程的实例。逻辑上讲,它是工作流的创建工厂和定位器,它能提供一些元信息给外界访问,如流程所...
  • hongbo781202
  • hongbo781202
  • 2004年04月12日 12:51
  • 2596

ofbiz工作流源代码学习(4)--WfProcess接口

 WfProcess接口WfProcess是工作流请求的执行者,执行工作的所有工作流对象都实现了这个接口,这个接口容许工作被异步地完成,并同时被监视和控制状态。当WfProcess被产生时,它进入op...
  • hongbo781202
  • hongbo781202
  • 2004年04月18日 23:57
  • 2869

ofbiz工作流源代码学习(4)--WfProcess接口

 WfProcess接口WfProcess是工作流请求的执行者,执行工作的所有工作流对象都实现了这个接口,这个接口容许工作被异步地完成,并同时被监视和控制状态。当WfProcess被产生时,它进入...
  • softstars
  • softstars
  • 2008年06月10日 16:49
  • 202

ofbiz工作流源代码学习(3)--WfProcessMgr接口

WfProcessMgr接口工作流管理器(WfProcessMgr)代表了一个特定流程的模板,它用来创建工作流流程的实例。逻辑上讲,它是工作流的创建工厂和定位器,它能提供一些元信息给外界访问,如流...
  • softstars
  • softstars
  • 2008年06月10日 16:50
  • 139

ofbiz工作流学习(一)

1 Ofbiz概况OFBiz是一个非常著名的开源项目,提供了创建基于最新J2EE/XML规范和技术标准,构建大中型企业级、跨平台、跨数据库、跨应用服务器的多层、分布式电子商务类WEB应用系统的框架。 ...
  • hongbo781202
  • hongbo781202
  • 2004年03月15日 09:15
  • 6590

shark工作流学习(三)

Shark特征 Shark1.0是一款简洁、实用的完全符合WFMC规范的工作流引擎。它具备以下几个特点: 1   在使用过程中,把流程名字尝试改成中文,但是对流程的驱动有一些影响,表明shark1.0...
  • hongbo781202
  • hongbo781202
  • 2004年05月31日 16:50
  • 4483

Ofbiz学习经验谈

不可否认,OFBiz这个开源的系统功能是非常强大的,涉及到的东西太多了,其实对我们现在而言,最有用的只有这么几个:实体引擎、服务引擎、WebTools、用户权限管理。 最先要提醒各位的是,在配置...
  • chenshanhao2008
  • chenshanhao2008
  • 2014年05月14日 07:12
  • 983
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ofbiz工作流源代码学习(2)--WfExecutionObject接口
举报原因:
原因补充:

(最多只允许输入30个字)