ObjectBuilder源码分析

ObjectBuilder源码分析

ID:37658668

大小:849.48 KB

页数:95页

时间:2019-05-27

ObjectBuilder源码分析_第1页
ObjectBuilder源码分析_第2页
ObjectBuilder源码分析_第3页
ObjectBuilder源码分析_第4页
ObjectBuilder源码分析_第5页
资源描述:

《ObjectBuilder源码分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、ObjectBuilder源码分析陈贞宝xashine.zhenbao@gmail.comObjectBuilder源码分析0尤埃与产品简介西安尤埃信息技术有限公司(http://www.uishell.com)成立于2008年5月份,专注于尤埃开放服务平台和尤埃SaaS引擎云计算产品开发。尤埃开放服务平台(XAUIOpenServicePlatform,UIOSP)是一个移植了OSGi规范的动态插件化与模块化平台,支持插件化与模块化、SOA和模块扩展。尤埃SaaS引擎(XAUISaaSEngine,XSE)是一个SaaS应用商店开放平台。该平台是面向SaaS运营商、SaaS提供商

2、和SaaS消费者三个角色的PaaS云计算平台,其模式为“SaaS运营商负责平台运营,SaaS提供商利用平台提供的开发工具包基于VS2008SP1开发SaaS应用并上传,SaaS消费者在应用商店挑选、购买并使用SaaS应用”。该平台由应用商店网站、应用开发工具包和应用虚拟运行环境构成。西安尤埃信息技术有限公司www.uishell.com029-883326851/95ObjectBuilder源码分析陈贞宝xashine.zhenbao@gmail.com1ObjectBuilderArchitecture1.1ArchitectureBuilderStrategies&Lifet

3、imeLocatorPoliciesContainerConstructorTypeMappingSingletonCreationReflectionPropertiesPropertiesMethodMethodSetterReflectionReflectionExecutionBuilderWareChinaofResponsibity1.2Strategies预创建创建初始化后初始化TypeMappingStrategy:用来CreationStrategy:用于构PropertySetterStrategy:BuilderAwareStrategy:检设置对象的真实返回

4、类型,建对象,使用构造器或者基于政策来设置新实例的公查实现IBuilderAware接口的比如对抽象类型IMyObject的Activator类方法。共属性。类。如果检查到这些类,当请求可以返回一个MyObjectPropertyReflectionStrateg创建对象完成并且对象准备实例。y:检查声明在属性和方法的使用,ObjectBuidler将通过SingletonStrategy:指定了特性类型。声明Dependency出发OnBuildUp事件通知这些ObjectBuilder是返回一个新和CreateNew特性的属性会引对象。如果ObjectBuilder执实例或者已

5、存在的实例。起对新实例的依赖注入。行TearDown方法,它将产生ConstructorReflectionStraMethodReflectionStrategyOnTearingDown事件。tegy:用来检查声明在构造:检查声明在方法的特性类器的特性,特别是型,这些方法需要在初始化InjectionConstructor特对象时执行。性,并选择一个构造对象的MethodExecuteStrategy:依构造器。赖政策来执行新实例的方法。西安尤埃信息技术有限公司www.uishell.com029-883326852/95ObjectBuilder源码分析陈贞宝xashine.

6、zhenbao@gmail.com1.3ObjectCreation(1)创建Builder,设置Strategies,Policies;(2)用户调用BuildUp,设置构建的对象类型,ID,已存在对象,临时政策,并制定对象存储器;(3)Builder创建构建的职责链和上下文;(4)Builder调用职责链头的BuildUp方法,利用构建策略开始构建;(5)每一个策略将会根据需要获取具体的政策来辅助构建对象,直至所有的策略构建完毕。1.3.1对象构建存储器和生命周期容器对象构建存储器存储单件实例的引用,声明周期容器存放单件实例对象。构建存储器会不定时进行清理,生命周期容器只有当被

7、调用dispose方法后才对对象执行Dispose。然后这些对象会被GC自动收集。存储器是对象主键和对象的序列集合,对象主键由对象的Type和ID构成,由DependencyResolutionLocatorKey对象表示。1.3.2策略链和政策列表策略链由处理对象的各个策略组成,由政策辅助来构建对象。策略链对所有对象的构建步骤都一样,对于不同类型的对象,只是政策上的不同。在上下文中,所有的策略存放在一个StrategyList对象中,它是策略阶段和该阶段策略列表构成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。