事件回调方法、流程引擎及事件回调系统与流程
- 国知局
- 2024-07-31 23:25:56
本发明涉及计算机软件开发及应用,尤其涉及一种事件回调方法、流程引擎及事件回调系统。
背景技术:
1、在应用开发中,流程引擎服务和业务服务事件回调是两个常见的技术概念。流程引擎服务通常用于管理和执行业务流程,它能够定义、自动化和监控业务流程的执行。业务服务事件回调是指当流程发生变化时触发业务服务内的时间操作,用于处理相关的业务逻辑或通知其他系统。
2、相关技术中,流程引擎服务通常采用基于规则引擎或工作流引擎的解决方案,例如activiti、camunda等。这些流程引擎能够定义和执行复杂的业务流程,往往是在流程引擎内部配置业务流程,在处理业务服务事件回调方面存在一定的局限性,灵活性差、可扩展性不佳。
技术实现思路
1、为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
2、鉴于以上所述现有技术的缺点,本发明公开了一种事件回调方法、流程引擎及事件回调系统,以提升业务服务事件回调的灵活性和可扩展性。
3、本发明实施例公开了一种事件回调方法,所述事件回调方法包括:通过流程引擎中的引擎端事件监听器对流程引擎中的事件进行监听,得到待回调事件,并将所述待回调事件发送至业务端,所述待回调事件包括事件条件匹配数据和事件执行数据;将所述业务端的全部的预设监听事件条件与所述事件条件匹配数据进行条件匹配;若条件匹配成功,将条件匹配成功的预设监听事件条件所对应的预设回调函数确定为目标回调函数;基于所述事件执行数据执行所述目标回调函数,以对所述待回调事件进行回调。
4、于本发明一实施例中,将所述待回调事件发送至业务端之前,所述方法包括:在所述流程引擎中配置引擎端事件监听器,所述引擎端事件监听器用于拦截所述流程引擎中的事件;在所述业务端部署引擎软件开发工具包,所述引擎软件开发工具包配置有一个或多个业务端事件监听器,每一个业务端事件监听器配置有预设监听事件条件和所述业务端事件监听器所对应的预设回调函数。
5、于本发明一实施例中,所述方法还包括以下至少之一:获取新增回调需求,所述新增回调需求至少包括新增监听事件条件和事件处理回调函数标识,根据所述新增监听事件条件和事件处理回调函数标识生成所述引擎软件开发工具包中的新增事件监听器,以将所述新增监听事件条件配置为所述新增事件监听器的预设监听事件条件,并将所述事件处理回调函数标识所表征的事件处理回调函数确定为所述新增事件监听器所对应的预设回调函数;获取删除回调需求,所述删除回调需求至少包括业务端事件监听器标识,根据业务端事件监听器标识将至少一个业务端事件监听器确定为待删除事件监听器,将所述待删除事件监听器从所述引擎软件开发工具包中删除。
6、于本发明一实施例中,当所述流程引擎与多个业务端连接时,将所述待回调事件发送至业务端包括:获取事件业务端匹配规则,所述事件业务端匹配规则表征与所述流程引擎连接的不同业务端对事件的接收权限;将所述待回调事件与所述事件业务端匹配规则进行规则匹配;若规则匹配成功,将规则匹配成功的业务端确定为目标业务端,将所述待回调事件发送至所述目标业务端。
7、于本发明一实施例中,将所述业务端的全部的预设监听事件条件与所述事件条件匹配数据进行条件匹配,包括:按照预设条件顺序逐一将预设监听事件条件与所述事件条件匹配数据进行条件匹配,所述预设条件顺序标识全部的预设监听事件条件的匹配排序。
8、于本发明一实施例中,若条件匹配成功,将条件匹配成功的预设监听事件条件所对应的预设回调函数确定为目标回调函数,基于所述待回调事件执行所述目标回调函数,包括:若一预设监听事件条件与所述待回调事件的条件匹配成功,先将所述一预设监听事件条件所对应的预设回调函数确定为目标回调函数,基于所述事件执行数据执行所述目标回调函数;执行完成后,再触发将所述预设条件顺序中所述一预设监听事件条件的后一个预设监听事件条件与所述事件条件匹配数据进行条件匹配,直到完成全部的预设监听事件条件与所述事件条件匹配数据进行条件匹配。
9、于本发明一实施例中,再触发将所述预设条件顺序中所述一预设监听事件条件的后一个预设监听事件条件与所述事件条件匹配数据进行条件匹配之前,所述方法还包括:依次获取每一次基于所述事件执行数据执行所述目标回调函数的事件执行结果;若所述事件执行结果为执行成功,触发将所述预设条件顺序中所述一预设监听事件条件的后一个预设监听事件条件与所述事件条件匹配数据进行条件匹配;若所述事件执行结果为执行失败,且故障解决方式为忽略,触发将所述预设条件顺序中所述一预设监听事件条件的后一个预设监听事件条件与所述事件条件匹配数据进行条件匹配;若所述事件执行结果为执行失败,且故障解决方式为回滚,重新执行按照预设条件顺序逐一将预设监听事件条件与所述事件条件匹配数据进行条件匹配的步骤,直到全部的事件执行结果均为执行成功。
10、于本发明一实施例中,基于所述事件执行数据执行所述目标回调函数之后,所述方法还包括:获取事件执行结果;将所述事件执行结果反馈至所述流程引擎。
11、本发明实施例公开了一种流程引擎,所述流程引擎包括:流程引擎本体;引擎端事件监听器,用于对流程引擎中的事件进行监听,得到待回调事件,并将所述待回调事件发送至业务端,以触发所述业务端将所述业务端的全部的预设监听事件条件与事件条件匹配数据进行条件匹配,若条件匹配成功,将条件匹配成功的预设监听事件条件所对应的预设回调函数确定为目标回调函数,基于事件执行数据执行所述目标回调函数,以对所述待回调事件进行回调,所述待回调事件包括事件条件匹配数据和事件执行数据。
12、本发明实施例公开了一种事件回调系统,所述事件回调系统包括流程引擎和业务端,其中,所述流程引擎包括流程引擎本体和引擎端事件监听器,所述业务端包括引擎软件开发工具包和一个或多个预设回调函数,所述引擎软件开发工具包包括一个或多个业务端事件监听器,所述业务端事件监听器包括匹配模块和执行模块;所述引擎端事件监听器,用于对流程引擎中的事件进行监听,得到待回调事件,并将所述待回调事件发送至业务端,所述待回调事件包括事件条件匹配数据和事件执行数据;所述引擎软件开发工具包用于接收所述待回调事件;所述匹配模块用于将所述业务端事件监听器对应的预设监听事件条件与所述事件条件匹配数据进行条件匹配,若条件匹配成功,将条件匹配成功的预设监听事件条件所对应的预设回调函数确定为目标回调函数;所述执行模块用于将所述事件执行数据发送至所述目标回调函数;当预设回调函数为所述目标回调函数时,所述目标回调函数用于基于所述事件执行数据进行执行,以对所述待回调事件进行回调。
13、本发明实施例还公开了一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行上述的方法。
14、本发明的有益效果:
15、通过在流程引擎中增加引擎端事件监听器来对流程引擎中的事件进行监听,并发送至业务端,再由业务端将业务端的全部的预设监听事件条件与事件条件匹配数据进行条件匹配,当匹配成功后,调用预设监听事件条件所对应的预设回调函数来对事件执行数据进行执行,以实现对待回调事件的回调,能够将流程引擎服务和业务服务事件回调无缝集成,在业务流程执行过程中动态触发业务服务事件回调,预设监听事件条件可以根据需要调整,以及与预设监听事件条件对应的预设回调函数也能够根据需要进行调整,这样能够保证业务服务事件回调的灵活性和可扩展性,以满足不同业务场景的需求。
本文地址:https://www.jishuxx.com/zhuanli/20240730/197525.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表