Пример #1
0
        static void Main()
        {
            Console.WriteLine("Events example - "
                              + "Copyright 2016, Sjors van Gelderen"
                              + Environment.NewLine);

            NewsManager nm        = new NewsManager();
            Publisher   publisher = new Publisher(nm);

            Broadcaster[] broadcasters = { new Broadcaster(nm), new Broadcaster(nm) };
            Fan[]         fans         = { new Fan(nm), new Fan(nm), new Fan(nm) };

            nm.PublishNews("developer", "Tetris", "In development");
            nm.PublishNews("developer", "Tic-Tac-Toe", "In development");

            fans[1].Unsubscribe();
            fans[2].Unsubscribe();

            nm.PublishNews("developer", "Tetris", "Trailer released");
            nm.PublishNews("developer", "Tic-Tac-Toe", "Game released");
        }
Пример #2
0
 public Broadcaster(NewsManager _nm)
 {
     nm = _nm;
     nm.publisher_event_handler += Broadcast;
 }
Пример #3
0
 public Fan(NewsManager _nm)
 {
     nm = _nm;
     nm.broadcaster_event_handler += Rejoice;
 }
Пример #4
0
 public Publisher(NewsManager _nm)
 {
     nm = _nm;
     nm.developer_event_handler += InformBroadcasters;
 }