Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
 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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
        }