public MainWindow() { InitializeComponent(); // we no longer need OAuth, secret and key can be omitted. // if API access stops working, try to pass secret and key. m_weatherProvider = new YahooWeatherProvider(); }
// Static Methods public static WeatherProviderImpl GetProvider(string API) { WeatherProviderImpl providerImpl = null; switch (API) { case WeatherAPI.Yahoo: providerImpl = new YahooWeatherProvider(); break; case WeatherAPI.WeatherUnderground: providerImpl = new WeatherUndergroundProvider(); break; case WeatherAPI.Here: providerImpl = new HEREWeatherProvider(); break; case WeatherAPI.OpenWeatherMap: providerImpl = new OpenWeatherMapProvider(); break; case WeatherAPI.MetNo: providerImpl = new MetnoWeatherProvider(); break; default: break; } if (providerImpl == null) { throw new ArgumentNullException(nameof(API), "Invalid API name! This API is not supported"); } return(providerImpl); }