OSGI Blueprint
2015-07-14 11:24
447 查看
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://killko.blog.51cto.com/3419292/1131090
Blueprint是OSGI的一个规范,它来源于spring dm.目前主要有aries和gemini两套实现,本文以aries的实现为基础。大致来说Blueprint是一个OSGI的IOC规范。对于熟悉spring的朋友来说,应该会十分容易上手。
Blueprint也是以xml文档来构建应用,但它也有采用Annotation的方式,我们在此只介绍xml的方式。
在Bundle里,这个xml默认的位置在OSGI-INF/blueprint下,也可以在manifest.mf里指定其它位置上的xml文档。
当一个包含blueprint xml文档的bundle install并resolved,并且active后,Aries blueprint container就会开始解析这个文档。
在处理这些xml文档的过程中,bundle还会有个blueprint的状态,区别于bundle的状态。这些状态包括Graceperiod,created,fail。其中created就是blueprint container已经解析完文档,并且文档中mandatory的依赖都得到满足了,这时blueprint的应用已经组装完毕。而Graceperiod则是应用正在组装中。fail是当blueprint无法解析xml文档或者是mandatory的依赖在超时时间内未能获得满足。
在spring的应用中,通常生成或组装的是bean或者bean工厂。而在Blueprint里,还可以发布和组装OSGI service。而OSGI service的动态性也要求Blueprint container的组装过程是动态的,这方面,我们在后续的blog里再详细描述。
本文出自 “色声香味触法” 博客,请务必保留此出处http://killko.blog.51cto.com/3419292/1131090
Blueprint是OSGI的一个规范,它来源于spring dm.目前主要有aries和gemini两套实现,本文以aries的实现为基础。大致来说Blueprint是一个OSGI的IOC规范。对于熟悉spring的朋友来说,应该会十分容易上手。
Blueprint也是以xml文档来构建应用,但它也有采用Annotation的方式,我们在此只介绍xml的方式。
在Bundle里,这个xml默认的位置在OSGI-INF/blueprint下,也可以在manifest.mf里指定其它位置上的xml文档。
当一个包含blueprint xml文档的bundle install并resolved,并且active后,Aries blueprint container就会开始解析这个文档。
在处理这些xml文档的过程中,bundle还会有个blueprint的状态,区别于bundle的状态。这些状态包括Graceperiod,created,fail。其中created就是blueprint container已经解析完文档,并且文档中mandatory的依赖都得到满足了,这时blueprint的应用已经组装完毕。而Graceperiod则是应用正在组装中。fail是当blueprint无法解析xml文档或者是mandatory的依赖在超时时间内未能获得满足。
在spring的应用中,通常生成或组装的是bean或者bean工厂。而在Blueprint里,还可以发布和组装OSGI service。而OSGI service的动态性也要求Blueprint container的组装过程是动态的,这方面,我们在后续的blog里再详细描述。
本文出自 “色声香味触法” 博客,请务必保留此出处http://killko.blog.51cto.com/3419292/1131090
相关文章推荐
- leetcode Repeated DNA Sequences 哈希表
- [SoapUI] 在某个测试步骤下面增加Script Assertion,运用 messageExchange 获取response content
- Functional MRI (second edition) -- 5. MR Contrast Mechanisms and Pulse Sequences
- easyui在ie下要注意的问题
- 芸芸毕业生
- 线性布局
- Assertion failure in -[UICGColor encodeWithCoder:]
- iOS隐藏UITableview下面多余的tableviewcell的线条
- iOS开发:UITableView加载多张照片导致内存上涨的问题
- 相对布局
- hibernate在使用sql查询query自动转化成model类型数据,query.addEntity
- 帧布局
- UITextField各种设置
- [Fri, 3 Jul 2015 ~ Tue, 7 Jul 2015] Deep Learning in arxiv
- ios UITableViewCell重用实现分析
- UILabel自适应里面的文字,自动调整宽度和高度
- iOS8 UISearchViewController搜索功能讲解
- iOS8 UISearchViewController搜索功能讲解 分类: ios技术 2015-07-14 10:23 76人阅读 评论(0) 收藏
- 关于UIButton的title后的自动宽
- AudioQueue(AudioToolBox)的原理与使用