Gemini Blueprint参考文档 第10章 与bundle一起工作
来源:互联网 发布:蚂蚁信息源码 编辑:程序博客网 时间:2024/05/21 06:39
第10章 与bundle一起工作
Gemini Blueprint提供了专用的schema元素用于与已存在的bundle进行交互或者安装新的bundle。虽然它不是故意要替换OSGi服务,但是bundle元素提供了一个简单的方式,即基于应用上下文的生命周期来执行bundle的动作。
bundle element定义的bean类型为 org.osgi.framework.Bundle。它提供了一种简单的方式来直接与bundle一起工作,包括驱动它们的生命周期。最简单的场景中,你只需要指定bundle的symbolic-name:
<bundle id="aBundle" symbolic-name="org.xyz.abundle"/>
现在bean aBundle可以被注入任何类型Bundle的属性。
如果需要的bundle还没有安装,你可以使用location属性来表明需要安装,利用action/destroy-action属性提供了声明式控制bundle的生命周期。location 属性用于指定bundle文件的URL。Action属性指定了bundle对象的生命周期操作。支持的动作值包括install、start、update、stop和uninstall。这些动作与Bundle接口中定义的名字具有相同的语义(参见OSGi服务平台核心规范),弱化前置条件允许抛出异常,例如为当前没有安装的bundle指定一个start动作(它将会首先进行安装)。
下表显示动作对Bundle状态的解释:
表10.1. <bundle> action值
Action
UNINSTALLED
INSTALLED/RESOLVED
ACTIVE
START
安装和启动bundle
启动bundle
无动作,bundle已经启动
UPDATE
安装和更新bundle (Bundle.update())
更新bundle
更新bundle
STOP
无动作
无动作
停止bundle
UNINSTALL
无动作
卸载bundle
停止bundle,然后卸载它
例如:
<!-- ensure this bundle is installed and started -->
<bundleid="aBundle"symbolic-name="org.xyz.abundle"
location="http://www.xyz.com/bundles/org.xyz.abundle.jar" action="start"/>
下表列出了bundle元素的属性名,可能的值和简短描述:
表10.2. <bundle>元素的属性
属性名
属性值
描述
symbolic-name
任意合法的symbolic-name字符串
Bundle对象的symbolic name。通常用于与已经安装的bundle交互
location
可以转换为URL的字符串
用于安装、更新、识别bundle的位置
action
start
stop
install
uninstall
update
驱动bundle的生命周期动作。这个动作在启动时执行
destroy-action
与action名字相同
驱动bundle的生命周期动作。这个动作在关闭时执行
Gemini Blueprint工程包含进一步支持virtual-bundle元素,它可以用于在线创建和安装OSGi的Bundle。
- Gemini Blueprint参考文档 第10章 与bundle一起工作
- Gemini Blueprint参考文档 第7章 Bundle和Application上下文
- Gemini Blueprint参考文档 第9章 服务注册表
- Gemini Blueprint参考文档 第11章 纲要服务
- Gemini Blueprint参考文档 第12章 测试OSGi应用
- Gemini Blueprint参考文档 第6章 OSGi 4.2 Blueprint Container
- Gemini Blueprint参考文档 第8章 打包和部署基于Spring的OSGi应用
- gemini-blueprint 学习笔记
- 基于gemini的blueprint(原生是Spring DM)实现对bundle生命周期的监听
- 与BA一起工作
- 与container一起工作
- OSGI企业应用开发(六)细说Blueprint & Gemini Blueprint(一)
- OSGI企业应用开发(七)细说Blueprint & Gemini Blueprint(二)
- OSGI企业应用开发(六)细说Blueprint & Gemini Blueprint(一)
- OSGI企业应用开发(七)细说Blueprint & Gemini Blueprint(二)
- Gemini
- 【AKKA 官方文档翻译】第三部分:与设备Actor一起工作
- Spring 4.x官方参考文档中文版——第21章 Web MVC框架(10)
- 静态页面与动态页面
- GlusterFS 分布式文件系统——理论及基础配置
- 头条数据切换
- Win10安装Ubuntu双系统导致Win10时间有问题
- N皇后问题非递归求解
- Gemini Blueprint参考文档 第10章 与bundle一起工作
- 图的存储结构之邻接表(详解)
- UVALive 7902 后缀自动机
- Unity Time类简介及应用
- linux 下关于任务的命令
- 模式二(区间更新,单点查询)
- Qt————学习记录(四)
- 【逻辑推理系列】海盗分金模型分析
- 冒泡排序