16 Eclipse context

16.1 什么是Eclipse context?java

        在启动一个Eclipse applicaiton 的时候,Eclipse 运行时 会建立一个 实现了 IEclispeContext 接口的 Object 对象,这个Object对象被叫作 context 或者 Eclipse context数据结构

        context 相似与Map数据结构,某个对象能够放在某个key下,key 是一个String类型,通常状况下使用全类名做为 key . key 对应的value 能够被 注入到 其余 objects 上 。和Map不一样的是, Eclipse context 是具备层级的,而且 能够动态计算 vaues app

        根据你的Application model 的结构,不一样的上下文对象相互关联造成一个具备层级关系的树结构 ,最顶层 的是Application context .spa

    以下图:orm

         在上下文树结构中。Objects 能够被添加到不一样的层级上,容许相同的key 上添加不一样的Objects.对象

16.2  哪些 model elements 拥有 本身的 context?接口

     下面这些model elements 实现了 MContext 接口,拥有本身的context:生命周期

  • MApplicationip

  • MWindow内存

  • MPerspective

  • MPart

  • MPopupMenu

16.3  Eclipse context 的生命周期

        Eclipse framework 在启动时根据 Application model 建立 context 对象 。默认状况下,context 包含一些预约义的 keys .

        Eclipse platform 自动建立 model objects 和 基于 class URL 的object .经过遍历  带有 custom context 的 model element ,Eclipse framework 决定 哪些objects 在 local context 是可见的。若是须要,Eclipse platform 将会根据 model elements 中的 Class URL 属性 建立 所须要的 java objects.

        在Eclipse context  树结构的初始建立以后,Eclipse framework或application 能够更改存储在context中的键值对。

        context 被初始化在内存中,当 applicaiton 中止的时候, context 对象被销毁。

相关文章
相关标签/搜索