撤消现有功能的方法和用于修改现有协议功能的系统技术方案

技术编号:3486551 阅读:176 留言:0更新日期:2012-04-11 18:40
提供用于撤消在用于本地协议实现的应用程序编程接口(API)中所提供的现有功能的方法、系统和程序产品。该方法包括:提供API给本地协议实现,该API具有能够被客户端应用程序调用来撤消在API中提供的现有功能的原始接口函数。该方法还包括:为原始接口函数定义预先形成的有效负荷元素的数组,该数组要被包括来创建从使用与本地协议实现不同的远程协议实现的服务器应用程序请求协议服务的定制的协议请求消息;为在所定义的数组中的每个元素导入数据;和调用原始接口函数,该函数将所定义的数组作为输入,并且在协议请求消息的协议消息报头之后顺序地插入它们,并且将定制的协议请求消息发送到服务器应用程序。

【技术实现步骤摘要】

本专利技术涉及用于适配于基于演进标准的协议实现中的变化的方法、系统和计算机程序。具体地说,本专利技术涉及用于撤消(override)用于本地协议实现的 应用程序编程接口中所提供的现有功能(functionality )、以与使用提供与该本地 协议实现不同的功能的远程协议实现的应用程序进行相互操作的方法、系统和 计算机程序产品。
技术介绍
当对多媒体环境中的演进协议进行后台(back-end)规范变化时,意味着实 施应用程序编程接口 (API)的服务器代码必须进行改变,以提供在后台中可用 的任何新函数(function)。然而,当协议持续变化时,试图通过客户端应用程序 来预测API的函数和用法是不可能的。必须频繁地提供新版本(release)使得客户 端能够利用新的函数,否则客户端不能利用新的函数。因此,需要当后台规范 改变时提供经济和有效的方法来对API进行改变,而不必太频繁地发布新的和 综合的版本,并且使得客户端能够利用已经被添加的任何新函数。而且,需要 提供机制用于克服与解释演进协议的其他供货商的设备的任何不兼容问题。
技术实现思路
在本专利技术的第 一 方面中,提供一种撤消在用于本地协议实现的应用程序编 程接口中所提供的现有功能的方法。该方法包括提供用于实施协议的本地协 议实现的应用程序编程接口,该应用程序编程接口具有原始接口函数,该原始 接口函数能够由客户端应用程序调用,以撤消在应用程序编程接口中所提供的 现有功能,以便与实施该协议的远程协议实现进行相互操作,该远程协议实现 支持与本地协议实现不同的功能。该方法还包括为原始接口函数定义预先形 成的有效负荷元素的数组(array),其要被包括来为从使用远程协议实现的服务 器应用程序请求协议服务而创建定制的协议请求消息,并且针对为创建定制的协议请求消息所定义的预先形成的有效负荷元素的数组中的每个元素导入(populate)数据。而且,该方法包括调用原始接口函数来撤消现有功能,其 中原始接口函数将所定义的预先形成的并且预先导入的有效负荷元素的数组作 为输入,并且通过在协议请求消息的协议消息报头之后顺序地插入预先形成的 有效负荷元素的数组来创建定制的协议请求消息,并且将定制的协议请求消息 发送到远程协议实现。该方法还包括将来自服务器应用程序的协议响应消息返 回给客户端应用程序,该协议响应消息包含格式化为另 一个预先形成的有效负 荷元素的数组的有效负荷数据。在实施方式中,提供给本地协议实现的应用程 序编程接口具有能够被客户端应用程序调用以发送请求协议服务的标准协议请 求消息的一个或多个预先定义的协议函数。该方法还包括调用一个或多个预 先定义的协议函数的预先定义的协议函数,该预先定义的协议函数具有要被传 递给被调用来创建标准协议请求消息的预先定义的协议函数的预先定义的参数 的列表。在实施方式中,调用预先定义的协议函数的步骤还包括将与预先定 义的参数的列表对应的数据加载到标准协议请求消息的预先定义的有效负荷元 素中,该预先定义的有效负荷元素与被传递到预先定义的协议函数的预先定义 的参数的列表对应。在实施方式中,在所创建的预先形成的有效负荷元素的数 组中的每个元素至少包括下列之一TLV(类型、长度、值)、AVP( Attribute Value Pair,属性值对)和定界文本串。在实施方式中,协议包括使用离散有效负荷元 素的任何协议。在实施方式中,协议包括直径协议(Diameter protocol )。在本专利技术的另 一个方面中,提供用于修改用于客户端一侧协议实现的应用 程序编程接口中所提供的现有协议功能的系统。该系统包括实施协议的服务 器一側远程协议实现,将其配置为响应于接收到的协议请求消息提供协议服务; 和实施协-议的客户端一侧协议实现,其具有应用禾呈序编程4妄口 ,该应用程序编 程接口具有被配置来撤消在应用程序编程接口中所提供的现有协议功能的原始 接口函数,其中使用客户端一侧协议实现的用户端应用程序为原始接口函数定 义预先现成的有效负荷元素的数组,其要被包括来在服务器一侧远程协议实现 支持与客户端一侧协议实现不同的功能的情况下,创建用于从使用服务器一侧 远程协议实现的服务器一侧应用程序请求协议服务的定制的协议请求消息。在实施方式中,客户端应用程序为所定义的预先形成的有效负荷元素的数组中的 每个元素导入数据,而且客户端应用程序调用原始接口函数,以修改在客户端 一侧协议实现的应用程序编程接口中所提供的现有协议功能。在实施方式中,将原始接口函数进一步配置为将所定义的预先形成的并且预先导入的有效负 荷元素的数组作为输入,并且通过在定制的协议请求消息的协议消息报头之后 顺序地插入预先形成的有效负荷元素的数组来创建定制的协议请求消息,并且 将定制的协议请求消息发送到使用服务器一侧远程协议实现的服务器一侧应用 程序。在实施方式中,将具有应用程序编程接口的客户端一侧协议实现配置为 接收调用在应用程序编程接口中所提供的预先定义的协议函数的函数引用 (flmction call ),该应用程序编程接口用于将标准协议请求消息发送到请求协议 服务的服务器一侧应用程序,而且其中将服务器一侧远程协议实现配置为将包 含被格式化为另一个预先形成的有效负荷元素的数组的有效负荷数据的协议响 应消息返回给客户端应用程序。在实施方式中,将应用程序编程接口配置为 将与预先定义的参数的列表对应的数据加载到标准协议请求消息的预先定义的 有效负荷元素中,该预先定义的有效负荷元素与传递到预先定义的协议函数的 预先定义的参数的列表对应。在实施方式中,在所创建的预先形成的有效负荷 元素的数组中的每个元素至少包括下列之一TLV(类型、长度、值)、AVP(属 性值对)和定界文本串。在实施方式中,协议包括使用离散有效负荷元素的任 何协议。在本专利技术的再一个方面中,提供一种用于修改在用于本地协议X实现的应 用程序编程接口中所提供的功能的计算机程序产品。该计算机程序产品包括 计算机可读介质;提供用于实施协议X的本地协议X实现的应用程序接口的第 一程序指令,该应用程序编程接口具有原始接口函数,所述原始接口函数可以 由客户端应用程序调用来撤消在应用程序编程接口中所提供的现有功能,以与 实施协议X的远程协议X实现进行相互操作,该远程协议X实现支持与本地协 议X实现不同的功能。在实施方式中,第一程序指令还包括指令,该指令用于 将应用程序编程接口提供给具有可以由用户端应用程序调用来发送请求协议X 服务的标准协议X请求消息的一个或多个预先定义的协议X函数的本地协议X 实现,并且用于调用所提供的一个或多个预先定义的协议X函数的预先定义的 协议X函数,所述预先定义的协议X函数具有要被传递到被调用来创建标准协中,第 一程序指令还包括用于将与预先定义的参数的列表对应的数据加载到标 准协议X请求消息的预先定义的有效负荷元素的指令,该预先定义的有效负荷 元素与传递到预先定义的协议X函数的预先定义的参数的列表对应。该计算机程序产品还包括第二程序指令,该指令用于为原始接口函数定义预先形成的有 效负荷元素的数组,该预先形成的有效负荷元素的数组要被包括来创建定制的 协议X请求消息,以从使用远程协议X实现的服务器应用程序请求协议X服务, 该第二指令包括本文档来自技高网...

【技术保护点】
一种撤消在用于本地协议实现的应用程序编程接口中所提供的现有功能的方法,所述方法包括步骤:提供用于实施协议的本地协议实现的应用程序编程接口,所述应用程序编程接口具有原始接口函数,该原始接口函数能够由客户端应用程序调用,以撤消在所述应用程序编程接口中提供的现有功能,以便与实施所述协议的远程协议实现进行相互操作,所述远程协议实现支持与所述本地协议实现不同的功能;为所述原始接口函数定义预先形成的有效负荷元素的数组,该数组要被包括来为从使用所述远程协议实现的服务器应用程序请求协议服务而创建定制的协议请求消息;为用于创建所述定制的协议请求消息所定义的预先形成的有效负荷元素的所述数组中的每个元素导入数据;以及调用所述原始接口函数来撤消所述现有功能,其中所述原始接口函数将所定义的预先形成的并且预先导入的有效负荷元素的所述数组作为输入,并且通过在所述协议请求消息的协议消息报头之后顺序地插入预先形成的有效负荷元素的所述数组,来创建所述定制的协议请求消息,并且将所述定制的协议请求消息发送到所述远程协议实现。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:蒂莫西J史密斯胡安马尔多纳多马克E诺斯维茨
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1