Я сгенерировал код модели из 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 ?!