I have a mutatable class similar to below, note code abridged to illustrate key points. The key point being that the Element and Variable objects in the maps are mutated outside of the Rendition object (via a web html inteface). That is, the composed state of the Rendition object is not handled by methods in the Rendition object.
I now want to implement an undo facility where any changes to the composed state can be reverted through a call to the Rendition.
To achieve this, I understand that I need to do a major refactor to ensure that all changes of state to the composed Rendition object are handled by Rendition which can then generate a memento object for each change.
Before I undertake this refactor, is anybody able to give me further pointers on moving forward?
when in doubt put it in parenthesis and stick a dollar sign in front of it, only good can come from this.