2012-12-01 53 views
1

我正在嘗試開發適用於必須捕獲添加通知的某些EMF Eclipse模型的適配器。它應該做的是,當我爲模型添加一些東西時,必須顯示一個對話框,詢問一些問題。加載資源時過濾emf eclipse通知

但是,當我打開模型,我收到大量的添加通知。我認爲它是正常的,因爲當你打開一個模型時,它必須加載它的所有功能,並且emf必須將它們添加到內存模型中(或類似的東西)。

但這是一個嚴重的問題,因爲我不知道什麼「添加通知」來自模型加載或來自用戶的交互。

是否可以使過濾器跳過來自模型負載的所有通知?

非常感謝!

回答

0

從Eclipse EMF論壇的人已經回答了我,這就是答案:

如何適配器連接?您應該考慮將它們附加到 對Resource.RESOURCE__IS_LOADED通知的響應中,就像 org.eclipse.emf.ecore.change.util.ChangeRecorder.notifyChanged(Notification) 一樣。你也可以用 ((Resource.Internal)eObject.eResource())。isLoading()來防範。

我做了第二個選擇,與isLoading守衛,它的工作就像一個魅力。