Ejemplo n.º 1
0
        public void Test()
        {
            var originator = new Originator();
            var careTaker  = new CareTaker();

            originator.SetState("State #1");
            careTaker.Add(originator.SaveStateToMemento());
            originator.SetState("State #2");
            careTaker.Add(originator.SaveStateToMemento());
            originator.SetState("State #3");
            careTaker.Add(originator.SaveStateToMemento());


            System.Console.WriteLine("First Saved State: " + careTaker.Get(0).GetState());
            System.Console.WriteLine("Current State: " + originator.GetState());
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            Originator originator = new Originator();
            CareTaker  careTaker  = new CareTaker();

            originator.setState("State #1");
            originator.setState("State #2");
            careTaker.add(originator.saveStateToMemento());

            originator.setState("State #3");
            careTaker.add(originator.saveStateToMemento());

            originator.setState("State #4");
            Console.WriteLine("Current State: " + originator.getState());

            originator.getStateFromMemento(careTaker.get(0));
            Console.WriteLine("First saved State: " + originator.getState());
            originator.getStateFromMemento(careTaker.get(1));
            Console.WriteLine("Second saved State: " + originator.getState());

            Console.ReadKey();
        }