- 浏览: 2474255 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (574)
- Book (62)
- Architecture (6)
- Java (39)
- Taobao (41)
- Distributed (4)
- Life (72)
- Database (7)
- Spring (16)
- Photography (15)
- Bicycle (41)
- Test (20)
- jBPM (8)
- Business (12)
- Movie (3)
- Ajax (15)
- Code (7)
- Eclipse (96)
- VIM (2)
- Music (6)
- Groovy (10)
- AutoHotKey (3)
- Dorado (10)
- Maven (7)
- Scrum (5)
- English (20)
- Financial (12)
- OSGi (3)
- Other (4)
- Tool (6)
- Browser (1)
- PPT (1)
- Project Management (4)
- Agile (6)
- Nosql (1)
- Search engine (6)
- Shell (2)
- Open Source (4)
- Storm (10)
- Guava (3)
- Baby (1)
- netty (1)
- Algorithm (1)
- Linux (1)
- Python (2)
最新评论
-
roy2011a:
https://github.com/ebottabi/sto ...
storm的序列化问题及与spring的结合方式 -
roy2011a:
能抗能打 写道哥们儿,你好!能共享下那个storm与sprin ...
storm的序列化问题及与spring的结合方式 -
Alick1:
兄弟,你之前是不是在深圳的正阳公司呆过啊?
storm的ack和fail -
liuleixwd:
先点个赞,写的非常好!有个问题请教下,如果我再bolt里不用e ...
storm的ack和fail -
yao-dd:
solr的facet查询
FROM:http://blog.csdn.net/nickcen/archive/2005/04/14/346859.aspx
1. EMF.edit
a) 说明:EMF.edit位于EMF.editor和EMF.Ecore之间,他起了一个中介者的作用。他负责把来自EMF.editor的UI相关的请求转换成符合EMF.Ecore的UI无关的调用。他需要提供以下四个功能:实现用于支持Viewer显示的ContentProvider和LabelProvider;实现用于支持属性显示的IPropertySource;实现用于支持对模型进行操作的CommandFramework;实现用于支持修改通知的Framework。
b) ContentProvider和LabelProvider
i. 图:
ii. 说明:当TreeViewer需要显示内容时,调用她的IContentProvider的getChildren(Object obj)方法。这个方法会被转发到AdapterFactoryContentProvider内部。她通过她所引用的ItemProviderAdapterFactory来获取一个对obj的ITreeItemContentProvider类型的Adapter,这个Adapter是由EMF生成的对应于ECore模型的一个ItemProviderAdapter(这里为TeacherItemProvider),最后由这个TeacherItemProvider负责生成所需要显示的子节点列表。
iii. 代码:
public classAdapterFactoryContentProvider implements ITreeContentProvider {
public Object []getChildren(Object object){
ITreeItemContentProvider treeItemContentProvider =
(ITreeItemContentProvider)adapterFactory.adapt(object,
ITreeItemContentProvider.class);
return treeItemContentProvider.getChildren(object);
}
}
注:红色是UI相关的请求,蓝色是UI无关的适配器类,粉红色就是UI无关的请求。
c) IPropertySource
i. 图:
ii. 说明:当PropertySheetPage需要显示属性内容时,他访问他的IPropertySourceProvider的getPropertySource(Object obj)方法。这个方法会被转发到AdapterFactoryContentProvider内部。她通过她所引用的ItemProviderAdapterFactory来获取一个对obj的IItemPropertySource类型的Adapter,这个Adapter是由EMF生成的对应于ECore模型的一个ItemProviderAdapter(这里为TeacherItemProvider),最后由这个TeacherItemProvider负责生成所需要显示的属性列表。
iii. 代码:
public classAdapterFactoryContentProvider implements IPropertySourceProvider{
public IPropertySource getPropertySource(Object object){
IItemPropertySource itemPropertySource =(IItemPropertySource)
adapterFactory.adapt(object,IItemPropertySource.class));
…
}
}
d) Command Framework
i. 图:
ii. 说明:由于EMF.editor并不了解底层的模型细节,因此他不能直接对模型进行操作,他需要生成一些用于操作模型的Command对象。当editor需要对模型进行修改时,他通过调用他的createCommand(EditingDomain domain)方法,创建用于进行模型操作的Command对象,该方法最后会被转发到domain的createCommand(),然后domain会根据他所引用的ItemProviderAdapterFactory来获取一个IEditingDomainItemProvider的适配器,由他来最后生成用于对模型进行操作的Command对象。
iii. 代码:
public class DeleteAction extendsCommandActionHandler{
public CommandcreateCommand(Collection selection){
returnRemoveCommand.create(domain, selection);
}
}
public class RemoveCommand extendsAbstractOverrideableCommand{
public static Commandcreate(…){
return domain.createCommand(…);
}
}
public classAdapterFactoryEditingDomain implements EditingDomain{
public CommandcreateCommand(…){
IEditingDomainItemProvider editingDomainItemProvider =
(IEditingDomainItemProvider)adapterFactory.adapt(owner,
IEditingDomainItemProvider.class);
returneditingDomainItemProvider.createCommand(…);
}
}
注:当需要执行命令时,editor会调用EditingDomain上的CommandStack,并调用他上面的execute(Command c)方法。
e) Notify Framework
i. 图:
ii. 说明:当我们修改了模型的值以后,模型将会向他对应的ItemProvider发出一个更新通知,这个通知随后被转发到ItemProviderAdapterFactory,然后最终发到AdapterFactoryContentProvider处,并由他来负责更新对应的viewer。
发表评论
-
Java程序员25个必备的Eclipse插件
2012-01-12 22:36 21936原文:http://www.fromdev.com/2012/ ... -
关于插件更新安装的错误
2007-12-21 20:12 2217在更新插件的时候出现这样的错误: Unable to comp ... -
最近做eclipse branding, features的一些经验
2007-12-16 01:24 4552知道eclipse的splash怎么做 ... -
GEF学习笔记
2007-12-07 20:20 4164GEF以前学习过, 而且还 ... -
SWT布局深入学习
2007-11-30 23:00 7947以下内容是学习"The Definitive Gui ... -
Eclipse Action 深入学习笔记(3)
2007-11-25 17:59 4088filter元素是用来指定当 ... -
Eclipse Action 深入学习笔记(2)
2007-11-25 17:14 5218Object Action 这种Action是跟弹出的上下文菜 ... -
Eclipse Action 深入学习笔记(1)
2007-11-25 17:07 7672以前做插件用到的ActionSet都只是依葫芦画瓢,没有真正理 ... -
JFace Text Editor完全掌握之终极指南(4)
2007-11-24 17:08 5677错误标识(Error Marking) Error Marki ... -
JFace Text Editor完全掌握之终极指南(3)
2007-11-24 16:56 5506内容大纲 之所以要给编 ... -
JFace Text Editor完全掌握之终极指南(2)
2007-11-24 16:53 6734最后一步就是实现各种功能 语法高亮 首先我们要实现的是语法高亮 ... -
JFace Text Editor完全掌握之终极指南(1)
2007-11-24 16:17 9997JFace Text Editor是JFace里面一个功能强大 ... -
最近的Eclipse plugin开发总结
2007-11-24 11:30 4942List控件没有提供addDblClickListener方法 ... -
eclipse3.3关于JavaFileEditorInput兼容性问题的解决
2007-11-24 11:22 4676在eclipse3.3中,JavaFileEditor ... -
Eclipse WTP Projects Facets实战指南(2)
2007-11-21 21:13 5257修饰工作 给facet在选择列表中添加图标 格式如下: xml ... -
Eclipse WTP Projects Facets实战指南(1)
2007-11-21 20:21 9588这个文章基本是"Building Project F ... -
也说关于WizardPage的动态生成
2007-11-05 14:26 5159在Eclipse中一个Wizard=Wiza ... -
关于多页编辑器中不同Editor之间的Redo&Undo冲突的解决
2007-09-03 15:17 4061在我们的插件工具的开 ... -
TextEditor原理分析笔记
2007-08-23 15:48 3383Editor的语法着色原理:Eclipse使用damage , ... -
最近的Eclipse开发总结
2007-08-23 15:46 2122java.lang.IllegalAccessError: t ...
相关推荐
本文将详细解析"emf-sdo-xsd-SDK-2.3.2.zip"这一关键插件,探讨它在Eclipse TPTP插件安装中的作用以及背后的原理和技术。 1. **Eclipse TPTP插件**: TPTP(Test and Performance Tools Platform)是Eclipse基金会...
在"emf-xsd-SDK-2.6.1"的压缩包中,包含了Eclipse环境的相关文件,这通常意味着我们可以在这个环境中开发和测试基于EMF和XSD的模型应用。Eclipse是一个集成开发环境(IDE),支持多种编程语言和插件,EMF相关的插件...
3. **EMF-Edit**: "EMF-edit功能解析.doc" 详细阐述了 EMF-Edit,它是 EMF 集成的一部分,提供了构建图形编辑器的基础。EMF-Edit 允许开发者快速创建与 Ecore 模型相关的图形界面,以直观地操纵和展示模型数据。 4....
在实际开发中,`emf-sdo-SDK-2.2.2`可以帮助开发人员快速构建数据驱动的应用程序,通过模型驱动的方法提高开发效率,同时利用SDO的强大功能来处理复杂的数据访问和转换问题。在Eclipse环境中,该插件通常会包含必要...
emf-sdo-SDK-2.2.0(2) eclipse 可视化 界面设计。 因为size太大,所以分成了2部分,另一部分在 emf-sdo-SDK-2.2.0(1)里面。 emf-sdo-SDK-2.2.0(1)的下载地址: http://download.csdn.net/source/1002774
在EMF-SDO-XSD SDK中,"eclipse"可能指的是Eclipse集成开发环境(Integrated Development Environment),这是一个广泛使用的Java开发工具,也支持多种其他语言和框架,包括Struts。开发者可以使用Eclipse来导入和...
【标题】"emf-xsd-Update-2.7.2" 涉及到的是一个针对Eclipse集成开发环境的扩展,主要关注的是EMF(Eclipse Modeling Framework)和XSD(XML Schema Definition)的更新版本2.7.2。这个更新包包含了对EMF框架的增强...
Eclipse 3.6.1(Helios)的插件。emf-runtime-2.6.1.7z。
通过安装和使用"emf-xsd-Update-2.10.2",开发者可以利用EMF的强大功能,创建XML Schema Definition (XSD)模型,并通过Visual Editor进行可视化编辑。这极大地简化了处理复杂数据结构和业务逻辑的过程,提高了开发...
"emf-runtime-2.5.0.zip" 是一个包含EMF运行时库的压缩文件,版本为2.5.0。这个版本可能包含了对模型对象的创建、序列化、反序列化以及与模型相关的事件处理等功能。它对于那些希望在Eclipse环境下开发图形化编辑器...
Eclipse Modeling Framework(EMF)是Eclipse项目中的一个核心组件,它提供了一种模型到代码的转换...通过Eclipse插件形式提供的最新emf-runtime版本2.10.1,开发者可以利用最新的功能和改进,提升建模和开发的效率。
标题中的"emf-runtime-2.6.1"指的是EMF框架的运行时组件,版本号为2.6.1。 EMF的核心功能包括: 1. **模型定义**:通过扩展XML Schema Definition (XSD) 或者ECORE(EMF的元数据模型)来定义模型结构。ECORE是一种...
"emf-sdo-runtime-2.2.0.zip" 是一个包含EMF SDO运行时库的压缩包,用于在Eclipse环境中集成SDO功能。这个版本号2.2.0表明这是一个特定的稳定版本,包含了该版本中所有修复的bug和新增的功能。 在压缩包内的...
emf-sdo-xsd-SDK-2.4.0.zip emf是Eclipse modeling framework组建框架的缩写;SDO是服务数据对象的缩写,它是Java程序的一种数据编程框架;emf-sdo-xsd-SDK-2.4.0.zip是Eclipse编程器的组成员之一。
在使用`emf-sdo-runtime`进行开发时,通常会结合Eclipse的其他工具,如EMF的模型编辑器(EMF Edit)、图型化建模工具(GMF)等,来提升工作效率。通过这些工具,开发者可以图形化地设计数据模型,自动生成相应的Java...
myeclipse ,swing ,chajian,解压,添加
标题中的"emf-sdo-xsd-SDK-2.2.1"指的是Eclipse Modeling Framework (EMF) Service Data Objects (SDO) XSD SDK的一个特定版本,即2.2.1。EMF是Eclipse基金会开发的一个强大的建模框架,它允许开发者创建、操作和...
【标题】:“EMF-Sourcedoc”:Java 可视化IDE插件解析与应用 【描述】:“EMF-Sourcedoc”是一个专为Java开发者设计的高效集成开发环境(IDE)插件,它提供了强大的可视化功能,帮助程序员更直观地理解和编辑模型...