I suggest to add the cause to the UpdateModelAction to distinguish why a diagram is redrawn.
In same cases I do not want to redraw the diagram.
For instance if I fit the diagram to the screen this invokes a UpdateModelAction from the server. However, if my model is updated by anything alse, I might want to fit to screen, since the size of the diagram might change.
I suggest to add the cause to the UpdateModelAction to distinguish why a diagram is redrawn. In same cases I do not want to redraw the diagram. For instance if I fit the diagram to the screen this invokes a UpdateModelAction from the server. However, if my model is updated by anything alse, I might want to fit to screen, since the size of the diagram might change.