一种实现软件模块调用的方法和装置制造方法及图纸

技术编号:2823420 阅读:168 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例公开了一种实现软件模块调用的方法和装置。该方法包括:设置扩展中心,并在扩展中心存储扩展点标识ID与扩展点接口的对应关系,扩展点载体和扩展者分别挂接扩展点;扩展点载体获取扩展中心接口,查找扩展中心中与所述扩展点载体的扩展点ID对应的扩展点接口,通过所述扩展点接口调用挂接所述扩展点的扩展者。应用本发明专利技术,被调用的模块能够通过调用接口识别触发所述调用的事件意义。

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及一种实现软件模块调用的方法和装置
技术介绍
计算机软件通常包含多个模块,这些模块之间可以相互调用。在以往的 技术中,当触发预定事件时,各个模块采用直接调用的方式调用其他模块, 其中,发出所述调用动作的模块称为事件源,被调用的模块称为接收方。这 种直接调用的方式使得事件源和接收方之间的耦合度较高,不利于软件升级。为降低事件源和接收方之间的耦合度,现有技术中引入了事件中心方案 来实现软件模块的调用。在事件中心方案中,事件源通过事件中心触发事件,接收方通过同一接口挂接到事件中心,当事件中心有事件被触发后,事件中心调用接收方。其 中,对应同一事件中心的事件源可以有多个,挂接到同一事件中心的接收方也可以有多个,事件中心接收到事件触发后,确定触发所述事件的事件源,通过所述事件中心自身的管理机制,调用相应接收方。可见,通过设置事件中心,可以降低事件源和接收方的耦合度,但同时,这种事件中心方案也存在如下的不足由于接收方通过同一"l妄口挂接到事件中心,因此,4^收方无法通过该4妻 口识别引发该接收方被调用的事件的意义,即接收方无法确定是哪一个事件 源触发事件使得该接收方被调用。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种实现软件模块调用的方法 和装置,以使被调用的模块能够通过调用接口识别触发所述调用的事件意义。为达到上述目的,本专利技术实施例的技术方案具体是这样实现的 一种实现软件模块调用的方法,该方法包括设置扩展中心,并在扩展中心存储扩展点标识ID与扩展点接口的对应关 系,扩展点载体和扩展者分别挂接扩展点;扩展点载体获取扩展中心接口 ,查找扩展中心中与所述扩展点载体的扩展 点ID对应的扩展点接口 ,通过所述扩展点接口调用挂接所述扩展点的扩展者。一种实现软件模块调用的装置,该装置包括扩展中心、扩展点载体和扩展者;所述扩展中心,存储有扩展点ID与扩展点接口的对应关系; 所述扩展点载体,挂接有扩展点,用于获取扩展中心接口,查找扩展中心 中与所述扩展点载体的扩展点ID对应的扩展点接口 ,通过所述扩展点接口调用 挂接所述扩展点的扩展者;所述扩展者,挂接有扩展点,响应所述扩展点载体的调用。 本专利技术实施例中,设置了扩展中心,其中存储有扩展点标识(Identity, ID) 与扩展点接口的对应关系,扩展点载体和扩展者分别挂接扩展点,扩展点载体 获取扩展中心接口 ,查找扩展中心中与所述扩展点载体的扩展点ID对应的扩展 点接口,通过所述扩展点接口调用挂接所述扩展点的扩展者。可见,由于扩展 点载体和扩展者可以通过扩展点接口挂接到扩展中心,而扩展点接口与扩展点相对应,不同扩展点代表不同的意义,因此,扩展者可通过扩展点接口识别扩 展点载体调用扩展者的意义。附图说明图l是"主面板"挂接"联系人资料变化"这一扩展点的方法流程图; 图2是"联系人管理模块,,通过"联系人资料变化"的扩展点接口调用"主面板"这一扩展者的方法流程图3是"营销管理模块"挂接"系统消息事件"这一扩展点的方法流程图4是"系统消息管理模块"通过"系统消息事件"这一扩展点的扩展点接 口调用"营销管理模块"这一扩展者的方法流程图5是方法实施例三中扩展点载体调用扩展者的方法流程图; 图6是实现软件模块调用的装置结构图。具体实施例方式本专利技术实施例中,设置扩展中心,其中存储有扩展点标识ID与扩展点接 口的对应关系,扩展点载体和扩展者分别挂接扩展点,扩展点载体获取扩展中 心接口,查找扩展中心中与所述扩展点载体的扩展点ID对应的扩展点接口,通 过所述扩展点接口调用挂接所述扩展点的扩展者。为使本专利技术的目的、技术方案及优点更加清楚明白,以下参照附图并举 实施例,对本专利技术进一步详细说明。下面根据扩展者挂接扩展点的不同方式,分别举实施例对本专利技术进行说明。方法实施例一本实施例中,扩展者挂接扩展点的方式为获取扩展中心接口,将所述扩 展者自身的接口注册到待挂接扩展点的扩展接口列表中。下面以即时通讯工具中的"主面板"作为扩展者,"联系人管理模块,, 作为扩展点载体,详细介绍扩展者采用方法实施例一的方法挂接扩展点和扩 展点载体通过扩展点接口调用扩展者的具体方法。图l是"主面板,,挂接"联系人资料变化,,这一扩展点的方法流程图, 如图l所示,该方法具体包括步骤IOI,"主面板"获取扩展中心接口。步骤102,"主面板"获取扩展点接口。本步骤中,"主面板"调用扩展中心接口,通过"联系人资料变化"这个扩展点的ID获取所述ID对应的扩展点接口。步骤103,"主面板"将自身的接口注册至所述扩展点接口的扩展接口 列表中。本步骤中,"主面板"调用扩展点接口的注册扩展函数,把自身的接口 注册到所述扩展点接口的扩展接口列表中。图2是"联系人管理模块"通过"联系人资料变化"的扩展点接口调用 "主面板"这一扩展者的方法流程图,如图2所示,该方法包括 步骤201,"联系人管理模块"获取扩展中心接口。 步骤202,"联系人管理模块"获取扩展点接口。本步骤中,"联系人管理模块"调用扩展中心接口,通过"联系人资料 变化"这个扩展点的ID获取所述ID对应的扩展点接口。步骤203,"联系人管理模块"获取扩展接口的列表。本步骤中,"联系人管理模块,,调用扩展点接口的获取扩展接口函数, 获取扩展接口的列表。步骤204,"联系人管理模块,,在所述扩展接口列表中查找"主面板" 的扩展接口 。步骤205,"联系人管理模块"通过所述扩展接口调用"主面板,,。 步骤206,"主面板"接收到所述调用后,刷新界面。 方法实施例二本实施例中,扩展者挂接扩展点的方式为扩展者获取扩展中心接口、将 所述扩展者自身的组件信息注册至待挂接扩展点的扩展者提供者。下面以即时通讯工具中的"营销管理模块,,作为扩展者,"系统消息管 理模块"作为扩展点载体,详细介绍扩展者采用方法实施例二的方法挂接扩 展点和扩展点载体通过扩展点接口调用扩展者的具体方法。图3是"营销管理模块"挂接"系统消息事件"这一扩展点的方法流程 图,如图3所示,该方法具体包括步骤301,"营销管理模块"设置自身的组件信息。本步骤中,"营销管理模块"在配置文件中描述关注"系统消息事件"扩展 点,并在所述配置文件中描述"营销管理模块"的扩展者提供者组件所在的类(class) ID等信息。步骤302,扩展中心获取"营销管理模块"的组件信息,将所述组件信息 存储至所述扩展点的扩展者提供者。本步骤中,在初始化扩展中心时,由扩展中心读取步骤301中的配置文 件,并把"营销管理模块"的组件信息存储至所述扩展点的扩展者提供者, 这样,扩展者提供者可根据该组件信息生成"营销管理模块"的接口。图4是"系统消息管理模块"通过"系统消息事件"这一扩展点的扩展点接 口调用"营销管理模块"这一扩展者的方法流程图,如图4所示,该方法包 括步骤401 ,"系统消息管理模块"获取扩展中心接口 。 步骤402,"系统消息管理模块"获取扩展点接口 。本步骤中,"系统消息管理模块"调用扩展中心接口 ,通过""系统消息 事件"这个扩展点的ID获取所述ID对应的扩展点接口 。步骤403,"系统消息管理模块"获取所述扩展点接口的扩展者提供者。本步骤中,"系统消息管理模块"调用扩展点接口的获取扩展者提供者函本文档来自技高网...

【技术保护点】
一种实现软件模块调用的方法,其特征在于,该方法包括:设置扩展中心,并在扩展中心存储扩展点标识ID与扩展点接口的对应关系,扩展点载体和扩展者分别挂接扩展点;扩展点载体获取扩展中心接口,查找扩展中心中与所述扩展点载体的扩展点ID对应的扩展点接口,通过所述扩展点接口调用挂接所述扩展点的扩展者。

【技术特征摘要】

【专利技术属性】
技术研发人员:王文涛刘晓聪
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:94[中国|深圳]

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

1