public static void Main() { //subject WeatherSubscriber DeutscherWetterdienst = new WeatherSubscriber(); //observers WeatherProvider WebDienst = new WeatherProvider("WebDienst"); WebDienst.Subscribe(DeutscherWetterdienst); WeatherProvider WetterApp = new WeatherProvider("WetterApp"); WetterApp.Subscribe(DeutscherWetterdienst); WeatherProvider Tagesschau = new WeatherProvider("Tagesschau"); Tagesschau.Subscribe(DeutscherWetterdienst); Console.WriteLine("Achtung! Der deutscher Wetterdienst hat neue Wetterdaten:"); DeutscherWetterdienst.SetMeasurements(new WeatherData(10, 7, 14)); Console.Read(); Tagesschau.Unsubscribe(); Console.WriteLine("Achtung! Die Tagesschau sucht sich ein anderen Wetterdienst."); Console.Read(); Console.WriteLine("Achtung! Der deutscher Wetterdienst hat neue Wetterdaten:"); DeutscherWetterdienst.SetMeasurements(new WeatherData(28, 26, 14)); Console.Read(); Console.WriteLine("Fehler! Der deutscher Wetterdienst hat keine Wetterdaten"); DeutscherWetterdienst.SetMeasurements(null); Console.Read(); }
static void Main(string[] args) { WeatherSubscriber subscriber = new WeatherSubscriber(); WeatherProvider channel7 = new WeatherProvider("Channel 7"); channel7.Subscribe(subscriber); WeatherProvider cnn = new WeatherProvider("CNN"); cnn.Subscribe(subscriber); WeatherProvider mouseTv = new WeatherProvider("Mouse TV"); mouseTv.Subscribe(subscriber); subscriber.SetMeasurements(new WeatherData(10, 7, 14)); mouseTv.Unsubscribe(); subscriber.SetMeasurements(new WeatherData(28, 26, 14)); subscriber.SetMeasurements(null); Console.Read(); }