0

我已经从 Ecore 生成了模型代码。在我的模型中,我有一个派生参考:derivedThings.

我想要做的derivedThingsImpl是以下内容:

我想遍历整个模型,并根据元素,我想将它添加到集合中。

for(TreeIterator iter = EcoreUtil.getAllContents(rootObject); iter.hasNext();)
 ...

问题是,我怎样才能从derivedThingsImpl?! 有没有类似的东西getRootObject()?!

谢谢

更新:

EObject e = this;
while(e.eContainer() != null) {
  e =  e.eContainer()
  if (e instanceof RootElement)
    break;
}
// No I should have the root element. Is this a good and clean way ?!
4

1 回答 1

0

有一种更好的方法:

EcoreUtil.getRootContainer(eObject);
于 2012-05-11T16:21:50.673 回答