Как изменить URI для InternalEObject - PullRequest
0 голосов
/ 04 февраля 2019

Я хотел бы изменить URI InternalEObject.

Я знаю, что получить URI можно, позвонив по номеру:

EcoreUtil.getURI(internalEObject);

Какой будет правильная процедура для изменения URI для рассматриваемого внутреннего объекта?Не просто получить строку.Создание нового идентичного InternalEObject и присвоение ему нового URI?

1 Ответ

0 голосов
/ 04 февраля 2019

Решил это.

Можно использовать функции утилит, присутствующие в EcoreUtil, который является частью EMF.

Следующий фрагмент сделал работу:

for (InternalEObject def: defs) {
  URI uri = EcoreUtil.getURI(def);
  def.eSetProxyURI(URI.createURI(uri.toString().replaceAll(STRING_CONSTANT1, STRING_CONSTANT2)));
}
...