コード例 #1
0
 public void Notify(IObservable sender, WeatherInfo info)
 {
     foreach (var item in observers)
     {
         item.Update(this, info);
     }
 }
コード例 #2
0
 public WeatherData()
 {
     WeatherInfo = new WeatherInfo();
 }
コード例 #3
0
 public void Unregister(WeatherInfo weather)
 {
     weather.MeasurementChange -= Message;
     Console.WriteLine($"The CurrentConditionsReport unregistered.");
 }
 public MeasurementChangedEventArgs(WeatherInfo info)
 {
     this.Info = info ?? throw new ArgumentNullException();
 }
コード例 #5
0
        private void OnMeasurementChanged(WeatherInfo info)
        {
            var args = new MeasurementChangedEventArgs(info);

            this.MeasurementsChanged?.Invoke(this, args);
        }
コード例 #6
0
        public void ClearData(int temperature, int humidity, int pressure)
        {
            var info = new WeatherInfo(temperature, humidity, pressure);

            this.OnMeasurementChanged(info);
        }
コード例 #7
0
 public WeatherData()
 {
     observers   = new List <IObserver>();
     WeatherInfo = new WeatherInfo();
 }