技术开发 频道

JBPM-Side流程设计器架构说明

  五、 TheModel全局类的用途

  TheModel全局唯一,职责如下:

  负责应用所有定制事件的订阅/分发;

   负责持有工具条和系统菜单属性;

  负责持有剪贴板,实现各个画板之间的节点拷贝/剪切。

  六、 ProcessDesigner与ProcessEditor

  ProcessDesigner负责整个应用的布局,目前由三部分组成,系统菜单、工具条和TabNavigator(TabBar管理器),TabBar管理器负责添加和删除Tab,由Tab加载画板,这样实现对多流程定义同时编辑的支持(即多Tab)。

  ProcessEditor是应用的入口,它持有ProcessDesigner,实现了IGraphicalEditor接口。目前其对graphicViewer()方法的实现是返回当前激活状态Tab的画板。

  同时,ProcessEditor负责统一监听工具条/键盘事件,并将这些事件处理委派给当前处于激活状态的Tab画板处理。

  七、 Xml框架

  位于org.jbpmside.xml下,使用E4X,使用binding对各种类型的节点进行解析,不集中在一个文件完成解析和转换,一个节点类型对应一个binding。使用代码如下:

  Java代码

  public function parse(xml:String):ProcessDefinition{

  var parser:Parser=new Parser();

  return parser.createParse().setString(xml).

  execute().getProcessDefinition() as ProcessDefinition;

  }

  测试代码位于test目录下,是目前唯一可以进行单元测试的部分。

  八、 还需要完成的工作

  1、 xml框架还需要大量的解析工作完成(以支持jpdl4)

  2、 第一个版本为本地应用,需要增加对本地文件操作的支持

  3、 模型迁移至org.jbpmside.model.common

  4、 工具条使用flexlib重写,新的16位图标,节点属性弹出框

  5、 Command目前只实现了对undo的支持,需要实现对redo的支持

0
相关文章