Beispiel #1
0
        internal Static_Output Read(Static_API staticRequest)
        {
            Static_Output output = new Static_Output()
            {
            };

            output.mimeType = "application/json";


            ////See if this request has cached data
            MemCachedD_Value cache = MemCacheD.Get_BSO <dynamic>("PxStat.Data", "GeoMap_BSO_Read", "Read", staticRequest.parameters[1]);

            if (cache.hasData)
            {
                output.response   = cache.data;
                output.statusCode = HttpStatusCode.OK;
                return(output);
            }

            using (GeoMap_BSO bso = new GeoMap_BSO(new ADO("defaultConnection")))
            {
                try
                {
                    var dataRead = bso.Read(staticRequest.parameters[1]);
                    if (dataRead.hasData)
                    {
                        output.statusCode = HttpStatusCode.OK;
                        GeoJson readGeoJson = JsonConvert.DeserializeObject <GeoJson>(dataRead.data[0].GmpGeoJson);
                        MemCacheD.Store_BSO("PxStat.Data", "GeoMap_BSO_Read", "Read", staticRequest.parameters[1], readGeoJson, default(DateTime));

                        output.response = Utility.JsonSerialize_IgnoreLoopingReference(JsonConvert.DeserializeObject <GeoJson>(dataRead.data[0].GmpGeoJson));
                    }
                    else
                    {
                        output.statusCode = HttpStatusCode.NotFound;
                    }
                }
                catch (Exception ex)
                {
                    Log.Instance.Error(ex.Message);
                    Log.Instance.Error(ex.StackTrace);
                    output.statusCode = HttpStatusCode.InternalServerError;
                }
            };



            return(output);
        }
Beispiel #2
0
        public static dynamic Read(Static_API staticRequest)
        {
            GeoMap_BSO_Read map = new GeoMap_BSO_Read();

            if (staticRequest.parameters.Count < 2)
            {
                Static_Output output = new Static_Output()
                {
                };
                output.statusCode = HttpStatusCode.BadRequest;
                return(output);
            }

            return(map.Read(staticRequest));
        }