本发明专利技术公开一种基于Openstack4j的技术框架扩展查询方法,涉及云平台技术领域;创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参;构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接;调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象;执行扩展查询方法,进行过滤。
【技术实现步骤摘要】
一种基于Openstack4j的技术框架扩展查询方法
本专利技术公开一种扩展查询方法,涉及云平台
,具体地说是一种基于Openstack4j的技术框架扩展查询方法。
技术介绍
现有云计算的使用,普遍基于的底层架构openstack,而在云平台等上层应用需要sdk来提升研发效率进而对openstack进行相关的组件操作。Openstack4j是一个开源的Java开发工具,使用其类库可以方便地操作和管理Openstack系统组件,包括虚机、网络、存储等资源。通过restful的api方式进行实现。但在使用openstack4j提供查询Port列表的接口时,往往发现使用参数进行过滤筛选时不便利,即无法使用status、fixed_ips等多变参数,也无法使用array的参数进行组合过滤。
技术实现思路
本专利技术针对现有openstack4j的sdk提供的方法不健全、不完善的问题,提供一种基于Openstack4j的技术框架扩展方法,在不额外提高自研的成本情况下,对sdk进行扩充和完善,提高查询Port列表时组合过滤参数使用的便利性,提升操作openstack底层的灵活性和可扩展性。本专利技术提出的具体方案是:一种基于Openstack4j的技术框架扩展查询方法:步骤1:创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参,步骤2:构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接,步骤3:调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象,步骤4:执行扩展查询方法,进行过滤。所述的一种基于Openstack4j的技术框架扩展查询方法中步骤1中构建属性为key-value形式的map,value为List<Object>,用于多值传递入参。所述的一种基于Openstack4j的技术框架扩展查询方法中当key值存在时,将原有对应的value保留,并修改为List,将新的value传入添加到数组内。所述的一种基于Openstack4j的技术框架扩展查询方法中步骤2中调用相应框架类中的paramList方法进行数组拼接。一种基于Openstack4j的技术框架扩展查询系统,包括创建模块、扩展模块、调用模块及执行模块,创建模块创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参,扩展模块构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接,调用模块调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象,执行模块执行扩展查询方法,进行过滤。所述的一种基于Openstack4j的技术框架扩展查询系统中创建模块构建属性为key-value形式的map,value为List<Object>,用于多值传递入参。所述的一种基于Openstack4j的技术框架扩展查询系统中当key值存在时,创建模块将原有对应的value保留,并修改为List,将新的value传入添加到数组内。所述的一种基于Openstack4j的技术框架扩展查询系统中调用模块调用相应框架类中的paramList方法进行数组拼接。本专利技术的有益之处是:本专利技术提供一种基于Openstack4j的技术框架扩展查询方法,通过创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参,构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接,使多变的参数进行多值传递,大大提升了代码的重复性和原生接口调用的复杂性,同时调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象,执行扩展查询方法,可进行过滤,提高查询Port列表时组合过滤参数使用的便利性,提升操作openstack底层的灵活性和可扩展性。附图说明图1是本专利技术方法流程示意图;图2是实现Openstack4j的技术架构示意图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步说明,以使本领域的技术人员可以更好地理解本专利技术并能予以实施,但所举实施例不作为对本专利技术的限定。本专利技术提供一种基于Openstack4j的技术框架扩展查询方法:步骤1:创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参,步骤2:构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接,步骤3:调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象,步骤4:执行扩展查询方法,进行过滤。利用本专利技术方法在在不额外提高自研的成本情况下,对sdk进行扩充和完善,可通过多变的参数进行多值传递,大大提升了代码的重复性和原生接口调用的复杂性,并且此思路可扩展于此框架下的其它组件,扩展性强而丰富。在本专利技术方法的一个实施例中,具体说明了应用过程:步骤1:创建一个用于端口查询的实体类PortListOptionsExt(名称可自行拟定),其中构建属性为key-value形式的map,Value为List<Object>,用于多值传递使用;为实体类添加公共的传值方法add(Stringkey,Objectvalue),当key值存在时,将原有对应的value保留,并修改为List,将新的value传入添加到数组内,并以链式构建的方式返回当前对象;步骤2:构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,将步骤1中构建的对象作为参数传入;并在调用请求之前,构建请求体时的拼接参数方式,设为数组拼接,具体使用的方法位于其框架类org.openstack4j.openstack.internal.BaseOpenStackService.Invocation<R>,调用类中的paramList方法;步骤3:调用openstack4j提供的获取执行权限client的方法,在当前的执行线程session中写入权限对象,步骤4:调用执行步骤3中构建的扩展查询方法,完成通过多变参数传值的结果过滤。上述过程中,端口列表查询接口可为/v2.0/ports,请求方式为GET,请求参数为JSON格式,在代码中通过步骤1构建的实体类PortListOptionsExt接受获取。而上述过程扩展实现不限于Neutron本文档来自技高网...
【技术保护点】
1.一种基于Openstack4j的技术框架扩展查询方法,其特征是:/n步骤1:创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参,/n步骤2:构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接,/n步骤3:调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象,/n步骤4:执行扩展查询方法,进行过滤。/n
【技术特征摘要】
1.一种基于Openstack4j的技术框架扩展查询方法,其特征是:
步骤1:创建用于端口查询的实体类,将原有的参数添加方法修改为可变长的数组传值入参,
步骤2:构建Service实现类,继承框架类BaseNetworkingServices,并扩展查询方法,构建请求体时的拼接参数方式为数组拼接,
步骤3:调用openstack4j获取执行权限client的方法,在当前的执行线程session中写入权限对象,
步骤4:执行扩展查询方法,进行过滤。
2.根据权利要求1所述的一种基于Openstack4j的技术框架扩展查询方法,其特征是步骤1中构建属性为key-value形式的map,value为List<Object>,用于多值传递入参。
3.根据权利要求2所述的一种基于Openstack4j的技术框架扩展查询方法,其特征是当key值存在时,将原有对应的value保留,并修改为List,将新的value传入添加到数组内。
4.根据权利要求1-3任一所述的一种基于Openstack4j的技术框架扩展查询方法,其特征是步骤2中调用相应框架类中的paramList方法进行数组拼接。
5.一种基于...
【专利技术属性】
技术研发人员:吴绍焓,李彦君,高传集,
申请(专利权)人:浪潮云信息技术股份公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。