首先来看看它的包的静态结构,
在workflow包中我们发现了很多内容,光从名字上来看,就很一目了然。我将对最初常用的几个包进行阅读,后续在用到更多的功能时,补充该文档。
该文档原始地址
最早主要会提到的是basic、config、loader这三个包中的部分类,这三个包对于osworkflow的初始化非常重要。其中也会提到spi中的几个类,对于持久化操作的封装将使用这个包内的东西。
1、 basic 这个包中有两个类,BasicWorkflow,BasicWorkflowContext。如下我们来看看这两个类的继承体系:下面首先是workflow控制流程对象的继承体系
再来看看BasicWorkflowContext的继承体系:
这个包其实从名字上来看非常的明了,也就是我们从使用osworkflow的角度来看,一个流程实例的创建,我们可以使用的基本对象是BasicWorkflow,而我们同时也使用的BasicWorkflowContext这个对象来完成保存流程请求的用户的基本功能。
2、 config 这个包完成的工作就像他的名字一样,基本的两个配置类在这个包中:DefaultConfiguration、SpringConfiguration。我们来看看这个包的基本结构:
DefaultConfiguration这个类,完成了基本的配置文件的载入工作,包括osworkflow.xml(存放持久层配置以及流程工厂配置的文件)以及workflows.xml(存放流程模型资源的配置文件)的解析和映射。
我们来看看它的几个实例字段:
//流程工厂类,通常被配置到osworkflow.xml文件中,在初始化的时候会去寻找是不是配置了别的工厂,如果配置了,将替换这个工厂的引用
private AbstractWorkflowFactory factory = new URLWorkflowFactory();
//持久化信息的map,从配置文件中读出来,存放到这个map中
private Map persistenceArgs = new HashMap();
//完成持久化信息的各种工作的类全路径
private String persistenceClass;
//这个引用本身是一个接口,它将在初始化发生的时候,赋予它的子类实现,这个接口在类中直接被实例化成WorkflowStore这接口的实现类。具体使用什么实现类将在配置文件中配置。
private transient WorkflowStore store = null;
//这个是配置是否完成的标志字段,这个字段在load方法完成的时候,被设置为true
private boolean initialized;
SpringConfiguration这个类为和Spring的整合提供了支持,目前还没有对Spring整合进行分析,在这里暂时不进行分析,将在以后补充。
3、 loader 这个包,这个包中有大量的Descriptor,这些个描述符对象,记录了一个流程实例的步骤、动作、状态、名称等信息。由于这个类图过分庞大,因此不在这里出图例。这个类中也有一些关键的流程模型加载的工厂类,完成流程模型信息的初始化。我们在实际的应用中,只使用到了XMLWorkflowFactory,那么我们的流程配置文件自然也就使用了xml格式,在AbstractWorkflow中,大量的调用到了这个类的接口,来获取模型对象。这个类的详细分析,将放到以后的文档中。这里只要明白这个类是保存里流程模型对象的工厂,也就对模型进行一些操作,比如删除和保存一个流程模型。
4、 spi 这个包里面的东西也很多,主要我们会提到的是记录流程实例状态的对象、持久化真正实现的方式。先来看看实例状态对象的类图:
SimpleWorkflowEntry这个类,经常会用到,在流程启动和运行过程中,我们通常都使用这个类来标识流程实例的所对应的模型和实例状态。
5、还有就是真正操作持久类的对象Store
这里只把实际操作流程数据库的jdbc实现类图画出来。创建流程实例对象到数据库,操作流程实例相关的很多数据库数据。
分享到:
相关推荐
基于OSworkflow上开发的一套数据库结构图草稿,没有实现, powerDesign格式
osworkflow指导文档 + 源码 + 参考资料全
OSWorkflow基于JDBC(oracle)存储实现的表结构OSWorkflow基于JDBC(oracle)存储实现的表结构
OSWorkflow
OSWorkFlow demo 资料 OSWorkFlow demo 资料
查询osworkflow的历史记录代码
OSWorkflow中文手册OSWorkflow中文手册OSWorkflow中文手册OSWorkflow中文手册 pdf 50页
工作流 osworkflow工作流 osworkflow工作流 osworkflow工作流 osworkflow工作流 osworkflow工作流 osworkflow
osworkflow中文入门指南,osworkflow+hibernate+spring集成配置,osworkflow-2.8.0.jar
通过osworkflow项目的学习和实践,总结出的一套osworkflow工作流引擎的学习笔记,供需要使用osworkflow系统的同学们借鉴,谢谢!
OSWorkflow中文手册OSWorkflow-chinese-manual-2.8.pdf Packt.Publishing.OSWorkflow.A.Guide.for.Java.Developers.and.Architects.Aug.2007.pdf 工作流普及风暴—基础概念.doc 用osworkflow写一个请假例子.rar
OSWORKFlow流程开发教程
OSWorkflow 2.8 API 文档
osworkflow教程,osworkflow教程,osworkflow教程,osworkflow教程,osworkflow教程,osworkflow教程,osworkflow教程,osworkflow教程,osworkflow教程osworkflow教程osworkflow教程,osworkflow教程,osworkflow教程...
这是一个简单的osworkflow的web应用,比较适合初学或入门者,或想研究osworkflow的人,如果有任何问题,可以联系我.
OsWorkflow与CMS集成,将OsWorkflow安装到OpenCms,采用MySQL数据库
OSWorkflow中文手册.pdf OSWorkflow中文手册.pdf OSWorkflow中文手册.pdf
osworkflow2.8.rar 工作流引擎