Community
Participate
Working Groups
The current implementation of the model set do not allow overriding.
Comitted on 0.8.X branch. rev -> 9754
fixed on trunk, rev10551
remove backport tag
r10626: I've removed the "throw exception" in one specific case. Papyrus doesn't fully support read only (It may happen that a specific action changes a read only element, although I don't know why). Thus, the following lines in ModelSet: if(authorizeSave.isPresent() && !authorizeSave.get()) { monitor.done(); throw new IOException("Some modified resources are read-only : the model can't be saved"); } prevents saving the model. Instead of potential model corruption, we have systematic data loss (i.e. cannot save, and we don't even know it/why). Especially, I have this exception when trying to save a simple model with a local profile applied. I open the model, move a class, save: OK. I create a Class, save: read-only save exception. In some (unidentified) cases, this "throw exception" can make the editor unusable. On the other hand, it is really unlikely that we actually modified StandardL3 by creating a simple Class, so saving is probably safe. Actions to be taken: - Warn the user instead of throwing a silent exception - Understand why the StandardL3 has been modified In the specific case of applied profiles (Either local or static), it is not possible to make the resource writable (Simply because the ReadOnlyHandler doesn't permit it, even for local profiles: it doesn't make sense to modify the applied profile from the applying model).
Note: this comment actually applied to Bug 396735. I re-close this task. Sorry :)