Exemplo n.º 1
0
        static void Main(string[] args)
        {
            Fan       ash         = new Fan("Ash");
            Fan       jay         = new Fan("Jay");
            Celebrity selenaGomez = new Celebrity("Selena Gomez");

            ash.FollowCelebrity(selenaGomez);
            jay.FollowCelebrity(selenaGomez);
            selenaGomez.Tweet = "Hey meet me in LA";
            Console.ReadLine();
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            Console.WriteLine("Observer Pattern");
            //we have 4 observers - 2 of them are ObserverType1 and 2 are ObserverType2

            var myObserver1 = new ObserverType1("Roy");
            var myObserver2 = new ObserverType1("Kevin");
            var myObserver3 = new ObserverType2("Bose");
            var myObserver4 = new ObserverType2("Jacklin");

            Console.WriteLine("Working with first celebrity now!");

            ICelebrity celebrity = new Celebrity("Celebrity-1");

            //registering the observers - Roy, Kevin, Bose

            celebrity.Register(myObserver1);
            celebrity.Register(myObserver2);
            celebrity.Register(myObserver3);

            Console.WriteLine("Celebrity-1 is setting Flag = 5");

            celebrity.Flag = 5;

            //Kevin doesn't want to get further notification
            //unregistering the observer(Kevin)

            Console.WriteLine("Celebrity-1 is removing Kevin from the observer list now");
            celebrity.Unregister(myObserver2);

            Console.WriteLine("Celebrity-1 is setting Flag = 50");
            celebrity.Flag = 50;

            //Kevin is registering himself again
            celebrity.Register(myObserver2);

            Console.WriteLine("Celebrity-1 is setting Flag = 100");
            celebrity.Flag = 100;

            Console.WriteLine("Working with another celebrity now!");
            ICelebrity celebrity2 = new Celebrity("Celebrity-2");

            //registering the observers Roy and Jacklin
            celebrity2.Register(myObserver1);
            celebrity2.Register(myObserver4);

            Console.WriteLine("Celebrity-2 is setting Flag = 500");
            celebrity2.Flag = 500;
            Console.Read();
        }
        static void Main(string[] args)
        {
            Console.WriteLine("***Observer Pattern Demonstration.***\n");
            //We have 4 observers-2 of them are ObserverType1, 1  is of ObserverType2
            IObserver myObserver1 = new ObserverType1("Roy");
            IObserver myObserver2 = new ObserverType1("Kevin");
            IObserver myObserver3 = new ObserverType2("Bose");
            IObserver myObserver4 = new ObserverType2("Jacklin");

            Console.WriteLine("Working with first celebrity now.");
            ICelebrity celebrity = new Celebrity("Celebrity-1");

            //Registering the observers-Roy,Kevin,Bose
            celebrity.Register(myObserver1);
            celebrity.Register(myObserver2);
            celebrity.Register(myObserver3);
            Console.WriteLine(" Celebrity-1 is setting Flag = 5.");
            celebrity.Flag = 5;

            /*
             * Kevin doesn't want to get further notification.
             * So, unregistering the observer(Kevin)).
             */
            Console.WriteLine("\nCelebrity-1 is removing Kevin from the observer list now.");
            celebrity.Unregister(myObserver2);
            //No notification is sent to Kevin this time. He has unregistered.
            Console.WriteLine("\n Celebrity-1 is setting Flag = 50.");
            celebrity.Flag = 50;
            //Kevin is registering himself again
            celebrity.Register(myObserver2);
            Console.WriteLine("\n Celebrity-1 is setting Flag = 100.");
            celebrity.Flag = 100;

            Console.WriteLine("\n Working with another celebrity now.");
            //Creating another celebrity
            ICelebrity celebrity2 = new Celebrity("Celebrity-2");

            //Registering the observers-Roy and Jacklin
            celebrity2.Register(myObserver1);
            celebrity2.Register(myObserver4);
            Console.WriteLine("\n --Celebrity-2 is setting Flag value as 500.--");
            celebrity2.Flag = 500;

            Console.ReadKey();
        }
Exemplo n.º 4
0
 public void FollowCelebrity(Celebrity celebrity)
 {
     celebrity.AcceptRequest(this);
 }