【问题标题】:GMF live constraints - validationGMF 实时约束 - 验证
【发布时间】:2010-11-15 10:30:44
【问题描述】:

我有一个 emf 模型,我想制作一个 GMF 编辑器来创建这个元模型的实例。我还想要一些实时约束来避免我的 EMF 模型的组件之间的一些连接。例如:我的 EMF 包括A、B、C、D 组件从一个名为 F 的通用类派生,并且在 F 中存在连接 F-> F 的引用,因此这能够为我提供 A、B、C、D 之间的连接组件。 但是当我在 GMF 编辑器时,我想要一种机制来避免连接 A->B 并只允许连接 A->C。 我读到这可以通过 OCL 语言和可以在 gmfmap 文件中添加的链接约束来实现。 但是我找不到任何具有 OCL 词汇的教程和进行实时验证的示例 有人指路吗?

【问题讨论】:

    标签: eclipse validation eclipse-emf eclipse-gmf


    【解决方案1】:

    经过更深入的搜索,我发现了一个非常有用且快速的验证框架。它被称为 Epsilon 组的 Eugenia。

    Eugenia 允许您通过单个文件为最终 GMF 编辑器创建所有适当的文件(非常棒,因为否则您必须自己声明 gfmtool、gmfgraph 等),然后您可以创建一个新的 EVL 文件,其中包含您的模型的约束和不变量。通过在您的元模型 URI 提供和扩展点,映射很容易完成,您所要做的就是在您的最终 Eclipse 配置中包含包含 evl 文件的新插件。 http://www.eclipse.org/gmt/epsilon/doc/articles/evl-gmf-integration/

    (请注意,不要将图表代码生成为 RPC 应用程序,因为 RPC 无法正常工作。有关更多信息,请查看此处:http://giampow.blogspot.com/2010/06/eclipse-rcp-application-custom-problems.html

    【讨论】:

    • 请注意,验证基于 EVL(Epsilon 验证语言),它适用于使用 Eugenia 和 GMF 生成的编辑器! Eugenia 与验证没有直接关系,是从同一个 Eclipse 项目组开发的。 Eugenia 让创建 GMF 编辑器变得更加容易。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-29
    • 1970-01-01
    相关资源
    最近更新 更多