[发明专利]基于图形虚拟机的流程虚拟机及流程实现方法无效
申请号: | 201210345043.4 | 申请日: | 2012-09-17 |
公开(公告)号: | CN102915250A | 公开(公告)日: | 2013-02-06 |
发明(设计)人: | 方国;田应生;杨宁 | 申请(专利权)人: | 北京中电普华信息技术有限公司;国家电网公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06Q10/06 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100192 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 图形 虚拟机 流程 实现 方法 | ||
技术领域
本发明涉及软件技术领域,更具体的说,是涉及一种基于图形虚拟机流程虚拟机及流程实现方法。
背景技术
随着计算机软件业的飞速发展,工作流在计算流程中发挥着越来越重要的作用。
工作流管理联盟组织定义了完整的工作流体系结构,人们通过流程定义工具以图形化方式定义流程,通过工作流引擎运转来推进流程各个节点之间的转移。
工作流引擎是工作流的核心调度机制,工作流引擎的研发涉及串行、选择、归并、循环等多种复杂的流程模式的实现,还涉及各种类型流程环节相关的复杂的规则和算法。由于源程序代码逻辑复杂难以阅读和理解,且耦合度高,所以工作流引擎的功能修改困难,功能的扩展往往需要修改已有的功能,往往一点点修改或者扩展就造成全局性的影响。
发明内容
有鉴于此,本发明提供了一种基于图形虚拟机流程虚拟机及流程实现方法,以克服现有技术中由于源程序代码逻辑复杂难以阅读和理解,且耦合度高产生的修改困难的问题。
为实现上述目的,本发明提供如下技术方案:
一种基于图形虚拟机的流程虚拟机,包括:
外观控制器,用于接收外部请求;
节点行为注册器,用于存储已注册的节点行为以及从所述外观控制器接收的外部请求中获取外部请求参数,并将所述外部请求参数组装成外部请求指令对象集,所述外部请求参数包括:图形参数、节点参数以及处理阶段参数;
上下文容器,用于存储上下文数据,所述上下文数据包括:上下文编号ID以及与所述上下文编号ID对应的上下文;
核心调度器,用于分配处理线程,并从所述外部请求指令对象集中获取当前外部请求指令对象以及从所述上下文容器中获取所述当前外部请求指令对象对应的上下文编号ID,并根据所述上下文编号ID选择相应的当前上下文以及处理线程;
单元调度器,用于根据所述当前上下文获取与其对应的上下文指令,将所述上下文指令作为当前上下文指令,从所述节点行为注册器中获取与所述当前上下文指令对应的当前节点行为,并将所述当前上下文加载至所述当前指令的节点行为中,以根据所述处理线程执行所述当前外部请求指令对象对应的当前节点行为,并判断所述外部请求指令对象集中的外部请求指令对象是否执行完毕,如果否,则从所述外部请求指令对象集中获取下一外部请求指令对象,作为当前外部请求指令对象,如果是,则退出所述处理线程。
其中,所述外观控制器还用于:
判断所述流程虚拟机的当前状态,当所述流程虚拟机为停止状态的情况下,控制所述核心调度器停止分配处理线程、取消所述节点行为注册器中已注册的节点行为以及清空上下文容器中的上下文,并标注所述工作流引擎的状态为停止状态。
其中,所述外观控制器还用于:
判断所述流程虚拟机的当前状态,当所述流程虚拟机为启动状态的情况下,创建所述节点行为注册器、所述上下文容器、所述单元调度器以及所述核心调度器,并初始化所述节点行为注册器以及所述核心调度器。
其中,所述节点行为注册器还存储有节点行为初始化函数以及配置文件,所述配置文件记录有节点行为缓冲映射结构与节点行为实现类的对应关系,对所述节点行为注册器初始化的过程包括:
调用所述节点行为初始化函数;
根据所述节点行为初始化函数创建节点行为缓冲映射结构以及从所述配置文件中获取与所述节点行为缓冲映射结构对应的节点行为实现类;
根据所述节点行为实现类创建类的实例,并加载到所述缓存映射结构中,以完成节点行为的注册。
其中,所述核心调度器包括:核心初始化函数以及与其对应的核心调度线程池,对所述核心调度器初始化的过程包括:
调用所述核心初始化函数;
根据所述核心初始化函数创建与其对应的核心调度线程池;
根据所述核心调度线程池,获取各个节点行为的上下文。
其中,所述核心调度器包括:
获取模块,用于接收到所述当前外部请求指令对象后,从所述上下文容器中获取上下文编号ID;
发送模块,用于将所述上下文编号ID传送往所述核心调度线程池;
选择模块,用于选择与所述上下文编号ID对应的处理线程。
一种基于图形虚拟机的流程实现方法,包括:
A、从接收到的外部请求中获取外部请求参数,并将所述外部请求参数组装成外部请求指令对象集,所述外部请求参数包括:图形参数、节点参数以及处理阶段参数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中电普华信息技术有限公司;国家电网公司,未经北京中电普华信息技术有限公司;国家电网公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210345043.4/2.html,转载请声明来源钻瓜专利网。