private WeatherDesktop.Interface.SunRiseSetResponse LiveCall(double Latitude, double Longitude) { SunRiseSetResponse response = new SunRiseSetResponse(); try { response.SolarNoon = DateTime.Now.Date.Add(SolarNoon); if (response.SolarNoon < DateTime.Now) { response.SolarNoon = response.SolarNoon.AddDays(1); } response.SunRise = DateTime.Now.Date.Add(SunriseTime); if (response.SunRise < DateTime.Now) { response.SunRise = response.SunRise.AddDays(1); } response.SunSet = DateTime.Now.Date.Add(SunsetTime); if (response.SunSet < DateTime.Now) { response.SunSet = response.SunSet.AddDays(1); } } catch (Exception x) { response.Status = x.ToString(); _ThrownException = x; } return(response); }
private SunRiseSetResponse LiveCall(double Latitude, double Longitude) { SunRiseSetResponse response = new SunRiseSetResponse(); try { string value; if (SharedObjects.Cache.Exists(ClassName)) { value = SharedObjects.Cache.StringValue(ClassName); } else { string url = string.Format(Properties.Resources.SRS_Url, Latitude.ToString(), Longitude.ToString()); value = SharedObjects.CompressedCallSite(url); SharedObjects.Cache.Set(ClassName, value); } JavaScriptSerializer jsSerialization = new JavaScriptSerializer(); SunRiseSetObject SunRiseSetResponse = jsSerialization.Deserialize <SunRiseSetObject>(value); response.Status = SunRiseSetResponse.status; if (response.Status.ToLower() == "ok") { response.SolarNoon = DateTime.Parse(SunRiseSetResponse.results.solar_noon).ToLocalTime(); response.SunRise = DateTime.Parse(SunRiseSetResponse.results.sunrise).ToLocalTime(); response.SunSet = DateTime.Parse(SunRiseSetResponse.results.sunset).ToLocalTime(); } } catch (Exception x) { response.Status = x.ToString(); _ThrownException = x; } return(response); }
public Mock_SunRiseSet() { _cache = new SunRiseSetResponse() { SunSet = SunSetDateTime, SunRise = SunRiseDateTime }; }
public override ISharedResponse Invoke() { base.Invoke(); SunRiseSetResponse srsResponse = new SunRiseSetResponse(); srsResponse.SunRise = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(Response.sys.sunrise).ToLocalTime(); srsResponse.SunSet = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(Response.sys.sunset).ToLocalTime(); srsResponse.Status = Status; return(srsResponse); }
public ISharedResponse Invoke() { if (_firstCall) { _firstCall = false; _cache = LiveCall(_lat, _long); HasUpdatedToday = true; } if (_LastUpdate.Day != DateTime.Today.Day) { HasUpdatedToday = false; } if (!HasUpdatedToday && DateTime.Now.Hour == _HourToUpdate) { _cache = LiveCall(_lat, _long); HasUpdatedToday = true; } return(_cache); }
private SunRiseSetResponse LiveCall() { SunRiseSetResponse sResponse = new SunRiseSetResponse(); try { string URL = string.Format(InternalService.Properties.Resources.Yahoo_SRS_Url, _zip); string results = SharedObjects.CompressedCallSite(URL); JavaScriptSerializer jsSerialization = new JavaScriptSerializer(); YahooSRSObject Response = jsSerialization.Deserialize <YahooSRSObject>(results); sResponse.SunRise = DateTime.ParseExact(Response.query.results.channel.astronomy.sunrise, "h:mm tt", System.Globalization.CultureInfo.InvariantCulture); sResponse.SunSet = DateTime.ParseExact(Response.query.results.channel.astronomy.sunset, "h:mm tt", System.Globalization.CultureInfo.InvariantCulture); sResponse.Status = "ok"; } catch (Exception x) { _ThrownException = x; } return(sResponse); }