public virtual void Restore()
 {
     foreach (var childMemento in ChildMementos.Reverse())
     {
         CurrentMemento = childMemento;
         childMemento.Restore();
     }
     CurrentMemento = null;
 }
Example #2
0
        public IMemento Restore()
        {
            var inverseMemento = new CompoundMemento {
                Name = Name
            };

            foreach (var childMemento in ChildMementos.Reverse())
            {
                inverseMemento.ChildMementos.Add(childMemento.Restore());
            }

            return(inverseMemento);
        }