节点可插拨的触发器实现方法及计算机可读存储介质技术

技术编号:33059553 阅读:22 留言:0更新日期:2022-04-15 09:47
本发明专利技术涉及一种节点可插拨的触发器实现方法,包括将触发器的运行逻辑拆分成公共能力和节点能力两个部分,所述公共能力包括触发器核心执行逻辑及各动作节点的通用执行逻辑,所述节点能力包括执行各动作节点的具体执行逻辑;根据触发器公共能力包括的核心执行逻辑及各通用执行逻辑分别创建对应的引擎;根据触发器节点能力包括的各具体执行逻辑分别创建对应的动作节点。本发明专利技术中,通过提取触发器核心执行逻辑及各动作节点的通用执行逻辑形成公共能力,将动作节点的具体执行逻辑形成节点能力,使触发器具体的节点能力与公共能力分离,节点之间无直接的功能耦合,某个节点的功能不再依赖其他节点的功能,从而节点可独立开发、独立上线、独立使用。独立使用。独立使用。

【技术实现步骤摘要】
节点可插拨的触发器实现方法及计算机可读存储介质


[0001]本专利技术属于工业互联网平台
,涉及一种节点可插拨的触发器实现方法及计算机可读存储介质。

技术介绍

[0002]工业互联网平台需要使用大量进行数据流转配置和业务编排的触发器。但由于企业对业务的诉求多样,就需要让触发器去自动执行各种各样的工作,而在触发器中,就会转换成对应的执行各种不同动作的节点。随着开发的节点增多,每个节点之间如果存在耦合关系,会导致开发新节点的效率降低,使客户企业不得不长时间等待。而且频繁修改一个高度耦合的系统,可能会影响已经实现的功能,产生系统的不稳定。同时企业存在定制节点的诉求,如果节点功能之间存在耦合就很难针对企业开发出独立的定制节点。

技术实现思路

[0003]有鉴于此,本专利技术的目的在于提供一种节点可插拨的触发器实现方法及计算机可读存储介质。
[0004]为达到上述目的,本专利技术提供如下技术方案:
[0005]一种节点可插拨的触发器实现方法,包括以下步骤:
[0006]S1、触发器的运行逻辑包括公共能力和节点能力两个部分,使触发器的动作节点通过公共能力产生数据流转;所述公共能力包括触发器核心执行逻辑及各动作节点的通用执行逻辑,所述节点能力包括执行各动作节点的具体执行逻辑;
[0007]S2、根据触发器公共能力包括的核心执行逻辑及各通用执行逻辑分别创建对应的引擎;
[0008]S3、根据触发器节点能力包括的各具体执行逻辑分别创建对应的动作节点。
[0009]进一步的,实现所述公共能力的引擎包括:
[0010]触发器流程运转引擎,用于实现触发器核心执行逻辑,驱动触发器按照触发器配置的流程图依次运行;
[0011]触发器运行上下文管理引擎,用于在内存中建立触发器运行上下文,在触发器运行过程中将节点对数据的操作记录存储在触发器运行上下文中,供后续的执行节点引用;
[0012]触发器通用赋值过滤引擎,使用统一的计算公式模型,对数据进行过滤或赋值;
[0013]触发器历史记录及异常处理引擎,用于在数据库中存储触发器执行过程中的数据,以及对于执行过程中的异常进行自动化的处理。
[0014]进一步的,所述动作节点在执行过程中产生的数据通过公共能力部分的触发器上下文管理引擎进行管理,执行过程中具体写入的数据由各动作节点的节点能力自行实现;
[0015]所述动作节点在执行过程中需要对数据进行赋值和过滤时,使用公共能力的触发器通用赋值过滤引擎实现,将逻辑转换为公式进行计算;
[0016]所述动作节点在执行过程中的运行记录内容生成、异常判断由该节点的节点能力
自行实现,并且接入公共能力的触发器历史记录及异常处理引擎中,由公共能力进行统一的存储和调度。
[0017]进一步的,还包括以下步骤:
[0018]S211、定义对象类型AutomationExecution和对象类型AutomationRuntimeContext;其中,对象类型AutomationExecution用于存储触发器的运行记录,参数包括触发器目前运行的节点,以及上一运行节点开始执行的时间、结束执行的时间和执行结果;
[0019]对象类型AutomationRuntimeContext用于存储触发器的配置参数和触发器运行上下文,参数包括触发器的配置对象Automation、运行日志管理对象HistoryManager、触发器执行动作节点工厂NodeBehaviorFactory和触发器运行上下文contextValue;所述配置对象Automation包括本次触发器中的所有动作节点的执行顺序及节点的配置参数;
[0020]S212、创建动作节点统一的通用行为接口NodeBehavior,并定义通用行为接口的核心方法execute,通用行为接口的核心方法execute的参数包括一个AutomationExecution类型的对象execution和一个AutomationRuntimeContext类型的对象context。
[0021]进一步的,创建动作节点的方法包括以下步骤:
[0022]S31、定义动作节点的参数;
[0023]S32、设置动作节点的配置界面;
[0024]S33、创建新的类,实现NodeBehavior接口,并在实现类中完成具体的节点执行逻辑;
[0025]S34、在内存的NodeBehaviorFactory中注册新增的实现类。
[0026]进一步的,触发器的运行过程包括以下步骤:
[0027]S21、创建触发器核心执行逻辑,当满足触发器的触发条件时,在内存中创建出触发器执行实例,实例化出AutomationExecution和AutomationRuntimeContext的对象;
[0028]S22、从触发器的配置对象Automation中取出触发器执行的第一个动作节点的配置参数,将节点配置参数传入触发器执行动作节点工厂NodeBehaviorFactory,并调用通用行为接口NodeBehavior中该动作节点的实现类方法,执行该动作节点的核心方法execute;
[0029]S23、当动作节点执行完成后,将该动作节点的执行数据写入对象context的触发器运行上下文contextValue;将该动作节点的执行情况写入对象execution;
[0030]S24、触发器核心执行逻辑调用运行日志管理对象HistoryManager的日志写入方法将对象execution的内容写入数据库的触发器日志中;并根据执行结果判断是否存在执行异常,如果存在执行异常则启动异常处理机制;如果执行正常则继续执行后续的动作节点;
[0031]S25、当需要继续向下执行时,从触发器的配置对象Automation中按执行顺序取出当前需执行的动作节点的配置参数,并将上一动作节点的对象execution和对象context的数据传入当前需执行的动作节点中,并调用该节点的核心方法execute,重复上述步骤继续往下执行。
[0032]S26、当没有后续的执行动作节点时,结束触发器的执行。
[0033]进一步的,还包括建立触发器执行动作节点列表,所述触发器执行动作节点列表
用于存储建立的每一动作节点的信息,在执行所述S34步骤后,还执行以下步骤:
[0034]S35、在触发器执行动作节点列表中新增一条数据,用于存储新增的动作节点的信息。
[0035]进一步的,所述触发器执行动作节点列表每条数据均包括节点名称、节点类型标识和节点分类,所述节点分类包括通用、高级和定制,对于“通用”类型的动作节点,所有用户均具有使用权限;对于“高级”类型的动作节点,与该动作节点建立了映射关系的用户具有使用权限;对于“定制”类型的动作节点,其参数还包括定制该动作节点的企业用户的企业id,只有定制的用户能够建立与该动作节点的映射关系,并在建立映射关系后具有该动作节点的使本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种节点可插拨的触发器实现方法,其特征在于,包括以下步骤:S1、触发器的运行逻辑包括公共能力和节点能力两个部分,使触发器的动作节点通过公共能力产生数据流转;所述公共能力包括触发器核心执行逻辑及各动作节点的通用执行逻辑,所述节点能力包括执行各动作节点的具体执行逻辑;S2、根据触发器公共能力包括的核心执行逻辑及各通用执行逻辑分别创建对应的引擎;S3、根据触发器节点能力包括的各具体执行逻辑分别创建对应的动作节点。2.根据权利要求1所述的节点可插拨的触发器实现方法,其特征在于,实现所述公共能力的引擎包括:触发器流程运转引擎,用于实现触发器核心执行逻辑,驱动触发器按照触发器配置的流程图依次运行;触发器运行上下文管理引擎,用于在内存中建立触发器运行上下文,在触发器运行过程中将节点对数据的操作记录存储在触发器运行上下文中,供后续的执行节点引用;触发器通用赋值过滤引擎,使用统一的计算公式模型,对数据进行过滤或赋值;触发器历史记录及异常处理引擎,用于在数据库中存储触发器执行过程中的数据,以及对于执行过程中的异常进行自动化的处理。3.根据权利要求2所述的节点可插拨的触发器实现方法,其特征在于,所述动作节点在执行过程中产生的数据通过公共能力部分的触发器上下文管理引擎进行管理,执行过程中具体写入的数据由各动作节点的节点能力自行实现;所述动作节点在执行过程中需要对数据进行赋值和过滤时,使用公共能力的触发器通用赋值过滤引擎实现,将逻辑转换为公式进行计算;所述动作节点在执行过程中的运行记录内容生成、异常判断由该节点的节点能力自行实现,并且接入公共能力的触发器历史记录及异常处理引擎中,由公共能力进行统一的存储和调度。4.根据权利要求1所述的节点可插拨的触发器实现方法,其特征在于,还包括以下步骤:S211、定义对象类型AutomationExecution和对象类型AutomationRuntimeContext;其中,对象类型AutomationExecution用于存储触发器的运行记录,参数包括触发器目前运行的节点,以及上一运行节点开始执行的时间、结束执行的时间和执行结果;对象类型AutomationRuntimeContext用于存储触发器的配置参数和触发器运行上下文,参数包括触发器的配置对象Automation、运行日志管理对象HistoryManager、触发器执行动作节点工厂NodeBehaviorFactory和触发器运行上下文contextValue;所述配置对象Automation包括本次触发器中的所有动作节点的执行顺序及节点的配置参数;S212、创建动作节点统一的通用行为接口NodeBehavior,并定义通用行为接口的核心方法execute,通用行为接口的核心方法execute的参数包括一个AutomationExecution类型的对象execution和一个AutomationRuntimeContext类型的对象context。5.根据权利要求4所述的节点可插拨的触发器实现方法,其特征在于,创建动作节点的方法包括以下步骤:S31、定义动作节点的参数;
S32、设置动作节点的配置界面;S33、创建新的类,实现N...

【专利技术属性】
技术研发人员:张剑卿罗义曹中余黎风顺吴迪
申请(专利权)人:重庆允丰科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1