[发明专利]插件扩展装置和插件扩展方法无效
申请号: | 201210438308.5 | 申请日: | 2012-11-06 |
公开(公告)号: | CN103019763A | 公开(公告)日: | 2013-04-03 |
发明(设计)人: | 仇大帅;阳彪 | 申请(专利权)人: | 深圳中兴网信科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京友联知识产权代理事务所(普通合伙) 11343 | 代理人: | 尚志峰;汪海屏 |
地址: | 518057 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 插件 扩展 装置 方法 | ||
技术领域
本发明涉及应用开发技术领域,具体而言,涉及一种插件扩展装置和一种插件扩展方法。
背景技术
OSGi(Open Service Gateway Initiative)技术是由OSGi Alliance组织制定的一个基于Java语言的服务规范——OSGi服务平台(Service Platform)。在基于OSGi的应用开发中,对于插件的扩展技术方面,最知名的是eclipse的扩展机制。
Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,目前亦有人通过插件使其作为C++、Python、PHP等其他语言的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持,使得Eclipse拥有较佳的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。在进行插件扩展时,只需要根据eclipse的扩展定义实现一个扩展,然后添加一个引导文件,当eclipse启动的时候就会把扩展加载进来,就能够实现自定义eclipse的插件开发。
但eclipse的扩展机制仍存在一些问题:每次进行扩展时,都需要对系统进行重启后才能够实现;同时,eslipse的扩展机制并不是总那么靠谱,比如在加载配置文件的过程中,有时会出现无法加载的情况。
因此,需要一种新的插件扩展技术,可以在不重启系统的状态下,实现对插件的动态扩展;并且由于不需要使用引导文件,使得扩展过程更加稳定。
发明内容
本发明正是基于上述问题,提出了一种新的插件扩展技术,可以在不重启系统的状态下,实现对插件的动态扩展;并且由于不需要使用引导文件,使得扩展过程更加稳定。
有鉴于此,本发明提出了一种插件扩展装置,包括:接口创建单元,用于在基于OSGi的应用开发平台中,创建至少一个静态扩展服务接口;扩展点定义单元,用于定义扩展点;扩展控制单元,用于调用所述静态扩展服务接口,并基于所述扩展点实现插件的扩展。
在该技术方案中,通过创建静态扩展服务接口,从而实现对插件的扩展,充分利用OSGi的插件隔离思想优势,在不需要对系统重启的前提下实现对插件的动态扩展。同时,由于不需要使用引导文件,因而扩展的实现过程更为稳定。
在上述技术方案中,优选地,所述扩展点定义单元定义所述扩展点的步骤包括:定义所述扩展点的命名空间和名字,以及定义对所述插件的扩展方法。
在该技术方案中,根据用户需要扩展的插件,定义对应的扩展方法来进行处理。具体地,可以为不同的插件预定义对应的处理方法,从而在定义扩展点时,选用需要的处理方法。
在上述技术方案中,优选地,所述扩展控制单元包括:扩展定义子单元,用于为所述插件的扩展定义与所述扩展点相同的命名空间和名字,并指定扩展所述插件时所需的资源;以及资源加载子单元,用于按照定义的扩展方法,加载扩展所述插件时所需的资源。
在该技术方案中,通过采用相同的命名空间和名字,在扩展点与扩展之间实现关联;并按照定义扩展点时定义的扩展方法,实现对插件的扩展。
在上述技术方案中,优选地,所述扩展控制单元还用于:在需要移除所述插件时,停止对所述静态扩展服务接口的调用,并删除扩展的插件及相应的扩展点。
在该技术方案中,在实现对插件的动态扩展之后,若希望移除该插件,则由于扩展过程是通过调用上述技术方案中的静态扩展服务接口实现的,因而可以直接停止调用该接口,并通过删除对应的扩展和扩展点,从而实现对该插件的动态删除,同样不需要对系统进行重启,最终实现对插件的热插拔。
在上述技术方案中,优选地,所述扩展点定义单元还用于:在定义所述扩展点时,定义对所述插件的删除方法,以由所述扩展控制单元用于删除所述插件及相应的扩展点。
在该技术方案中,根据不同类型的插件,在扩展之前,定义对应的删除方法。具体地,可以根据插件的不同类型,预定义对应的删除方法,从而在实际使用时,根据需要选用相应的方法。
根据本发明的又一方面,还提出了一种插件扩展方法,包括:步骤202,在基于OSGi的应用开发平台中,创建至少一个静态扩展服务接口;步骤204,定义扩展点;步骤206,调用所述静态扩展服务接口,并基于所述扩展点实现插件的扩展。
在该技术方案中,通过创建静态扩展服务接口,从而实现对插件的扩展,充分利用OSGi的插件隔离思想优势,在不需要对系统重启的前提下实现对插件的动态扩展。同时,由于不需要使用引导文件,因而扩展的实现过程更为稳定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳中兴网信科技有限公司,未经深圳中兴网信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210438308.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种除臭塔及具有其的除臭塔组
- 下一篇:基于3D模型的界面逻辑控制方法