[发明专利]一种基于java的有序多播方法、装置及应用在审
申请号: | 202211530916.9 | 申请日: | 2022-12-01 |
公开(公告)号: | CN115857892A | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 李圣权;王伟;黄河 | 申请(专利权)人: | 城云科技(中国)有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F9/448 |
代理公司: | 杭州汇和信专利代理有限公司 33475 | 代理人: | 吴琰 |
地址: | 310052 浙江省杭州市滨江区长*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 java 有序 方法 装置 应用 | ||
1.一种基于java的有序多播方法,其特征在于,包括以下步骤:
构建注册有事件发送方、事件接收方的事件总线处理中心类,所述事件发送方运行父事件,所述事件接收方包含与父事件对应的至少一子事件;
在每一子事件的注解中写入对应的父事件名称以及子事件执行顺序,并将所述父事件名称、子事件名称以及子事件执行顺序存储到所述事件总线处理中心类的双层ConcurrentHashmap中;
当所述父事件执行完毕时,将执行完毕通知发送给所述事件总线处理中心类,所述执行完毕通知包含父事件名称,所述事件总线处理中心类根据所述父事件名称在所述双层ConcurrentHashmap中找到对应的子事件名称,并根据每一子事件执行顺序执行所述子事件名称对应的子事件。
2.根据权利要求1所述的一种基于java的有序多播方法,其特征在于,在“每一子事件的注解中写入对应的父事件名称以及子事件执行顺序”步骤中,在每一子事件中添加@Subscriber注解,在所述@Subscriber注解的event字段中写入对应的父事件名称,在所述@Subscriber注解的order字段中写入子事件执行顺序。
3.根据权利要求1所述的一种基于java的有序多播方法,其特征在于,所述事件总线处理中心对所述事件发送方、事件接收方进行全局扫描,获取所述子事件名称以及@Subscriber注解,对每一@Subscriber注解进行解析得到每一子事件对应的父事件名称以及子事件执行顺序。
4.根据权利要求1所述的一种基于java的有序多播方法,其特征在于,在“将所述父事件名称、子事件名称以及子事件执行顺序存储到所述事件总线处理中心类的双层ConcurrentHashmap中”步骤中,第一层ConcurrentHashmap以父事件名称为key,以第二层ConcurrentHashmap为value,第二层ConcurrentHashmap以子事件名称为key,以子事件执行顺序为value。
5.根据权利要求4所述的一种基于java的有序多播方法,其特征在于,在“所述事件总线处理中心类根据所述父事件名称在所述双层ConcurrentHashmap中找到对应的子事件名称”步骤中,所述事件总线处理中心类根据所述父事件名称在第一层ConcurrentHashmap中找到对应的第二层ConcurrentHashmap,再根据第二层ConcurrentHashmap中的子事件执行顺序执行对应的子事件。
6.根据权利要求1所述的一种基于java的有序多播方法,其特征在于,在“当所述父事件执行完毕时,将执行完毕通知发送给所述事件总线处理中心类”步骤中,在所述事件总线处理中心类中定义一个发送方法,当所述父事件执行完毕时,调用所述事件总线处理中心类中的发送方法发送执行完毕通知。
7.根据权利要求1所述的一种基于java的有序多播方法,其特征在于,在“根据每一子事件名称的执行顺序执行所述子事件名称对应的子事件”步骤中,在所述事件总线处理中心类中定义一个执行功能,使用所述执行功能按照子事件执行顺序调用子事件进行执行。
8.一种基于java的有序多播装置,其特征在于,包括:
构建模块:构建注册有事件发送方、事件接收方的事件总线处理中心类,所述事件发送方运行父事件,所述事件接收方包含与父事件对应的至少一子事件;
部署模块:在每一子事件的注解中写入对应的父事件名称以及子事件执行顺序,并将所述父事件名称、子事件名称以及子事件执行顺序存储到所述事件总线处理中心类的双层ConcurrentHashmap中;
执行模块:当所述父事件执行完毕时,将执行完毕通知发送给所述事件总线处理中心类,所述执行完毕通知包含父事件名称,所述事件总线处理中心类根据所述父事件名称在所述双层ConcurrentHashmap中找到对应的子事件名称,并根据每一子事件执行顺序执行所述子事件名称对应的子事件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于城云科技(中国)有限公司,未经城云科技(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211530916.9/1.html,转载请声明来源钻瓜专利网。