public static List <string[]> getSyncGrid(string uri, string dashboardID) { string response; try { List <string[]> result = null; response = connector.HttpGet(uri, timoutAPI); Logger.Debug("GET: " + uri + " ok"); if (response != null) { result = JsonConvert.DeserializeObject <List <string[]> >(response); } else { result = new List <string[]>(); } return(result); } catch (Exception ex) { APIResponseTime.calculateResponseCount(uri, ex.GetType().ToString()); Logger.Warn("GET: " + uri); Logger.Warn(ex.ToString()); return(null); } }
public static async Task <List <string[]> > getAsyncGrid(string uri, string dashboardID) { try { string respString = null; List <string[]> result = null; using (HttpClient client = new HttpClient()) { client.Timeout = TimeSpan.FromMilliseconds(timeoutGrid); var response = await client.GetAsync(uri); Logger.Debug("GET: " + uri + " " + response.StatusCode.ToString()); if (response.StatusCode == System.Net.HttpStatusCode.OK) { respString = await response.Content.ReadAsStringAsync(); result = JsonConvert.DeserializeObject <List <string[]> >(respString); } else { APIResponseTime.calculateResponseCount(uri, response.StatusCode.ToString()); } } return(result); } catch (Exception ex) { APIResponseTime.calculateResponseCount(uri, ex.GetType().ToString()); Logger.Warn("GET: " + uri); Logger.Warn(ex.ToString()); return(null); } }
public static string processGetTile(string uri, string path, bool firstTry) { uri = uri.ToLower(); JToken item = null; JObject jsonObject = null; jsonObject = (JObject)MemoryCaches.memCache.Get(uri); try { if (jsonObject != null) { if (jsonObject.ToString() == "error") { return(null); } } else { var response = connector.HttpGet(uri, timoutAPI); Logger.Debug("GET: " + uri + " OK"); jsonObject = JObject.Parse(response); } JObject jObject = (JObject)jsonObject; if (jObject != null) { MemoryCaches.memCache.Set(uri, jObject, MemoryCache.InfiniteAbsoluteExpiration); item = jObject.SelectToken("$." + path); return(item.ToString()); } else { MemoryCaches.memCache.Set(uri, "error", MemoryCache.InfiniteAbsoluteExpiration); return(null); } } catch (Exception ex) { if (firstTry) { Thread.Sleep(retryAPI); return(processGetTile(uri, path, false)); } else { MemoryCaches.memCache.Set(uri, "error", MemoryCache.InfiniteAbsoluteExpiration); Logger.Warn("GET: " + uri + " " + path); APIResponseTime.calculateResponseCount(uri, ex.GetType().ToString()); Logger.Warn(ex.ToString()); return(null); } } }
public static async Task <Dictionary <string, string> > getAsyncMessages(string uri, FilterStatus filter, string dashboardID) { try { string respString = null; List <JObject> result = null; Dictionary <string, string> messages = new Dictionary <string, string>(); string URL = uri + "?filter=" + JsonConvert.SerializeObject(filter); URL = URL.Replace(@"\", string.Empty); using (HttpClient client = new HttpClient()) { client.Timeout = TimeSpan.FromMilliseconds(timeoutMesssages); var response = await client.GetAsync(URL); Logger.Debug("GET: " + uri + " " + response.StatusCode.ToString()); if (response.StatusCode == System.Net.HttpStatusCode.OK) { respString = await response.Content.ReadAsStringAsync(); result = JsonConvert.DeserializeObject <List <JObject> >(respString); } else { APIResponseTime.calculateResponseCount(uri, response.StatusCode.ToString()); return(null); } } JToken thing = null; JToken item = null; foreach (var obj in result) { thing = obj.SelectToken("$." + "thingId"); if (!messages.ContainsKey(thing.ToString())) { item = obj.SelectToken("$." + "status"); messages.Add(thing.ToString(), item.ToString()); } } return(messages); } catch (Exception ex) { APIResponseTime.calculateResponseCount(uri, ex.GetType().ToString()); Logger.Warn(uri); Logger.Warn(JsonConvert.SerializeObject(filter)); Logger.Warn(ex.ToString()); return(null); } }
public static async Task <Dictionary <string, string> > getAsyncThings(string uri) { try { string respString = null; List <JObject> result = null; Dictionary <string, string> dictResult = new Dictionary <string, string>(); using (HttpClient client = new HttpClient()) { var response = await client.GetAsync(uri); Logger.Debug("GET: " + uri + " " + response.StatusCode.ToString()); if (response.StatusCode == System.Net.HttpStatusCode.OK) { respString = await response.Content.ReadAsStringAsync(); result = JsonConvert.DeserializeObject <List <JObject> >(respString); } else { APIResponseTime.calculateResponseCount(uri, response.StatusCode.ToString()); return(null); } } JToken item = null; JToken value = null; foreach (var obj in result) { item = obj.SelectToken("$." + "thingId"); value = obj.SelectToken("$." + "code"); dictResult.Add(item.ToString(), value.ToString()); } return(dictResult); } catch (Exception ex) { APIResponseTime.calculateResponseCount(uri, ex.GetType().ToString()); Logger.Warn("GET: " + uri); Logger.Warn(ex.ToString()); return(null); } }
public static async Task <string> processGetTile(string uri, string path, bool firstTry) { uri = uri.ToLower(); string respString = null; JToken item = null; JObject jsonObject = null; jsonObject = (JObject)MemoryCaches.memCache.Get(uri); HttpResponseMessage response = null; var cts = new CancellationTokenSource(); try { if (jsonObject != null) { if (jsonObject.ToString() == "error") { return(null); } } else { using (HttpClient client = new HttpClient()) { //client.Timeout = TimeSpan.FromMilliseconds(timoutAPI); response = await client.GetAsync(uri); Logger.Debug("GET: " + uri + " " + response.StatusCode.ToString()); if (response.StatusCode == System.Net.HttpStatusCode.OK) { respString = await response.Content.ReadAsStringAsync(); jsonObject = JObject.Parse(respString); } else { respString = await response.Content.ReadAsStringAsync(); APIResponseTime.calculateResponseCount(uri, response.StatusCode.ToString()); } } } JObject jObject = (JObject)jsonObject; if (jObject != null) { MemoryCaches.memCache.Set(uri, jObject, MemoryCache.InfiniteAbsoluteExpiration); item = jObject.SelectToken("$." + path); return(item.ToString()); } else { MemoryCaches.memCache.Set(uri, "error", MemoryCache.InfiniteAbsoluteExpiration); return(null); } } catch (Exception ex) { if (firstTry) { await Task.Delay(retryAPI); return(await processGetTile(uri, path, false)); } else { MemoryCaches.memCache.Set(uri, "error", MemoryCache.InfiniteAbsoluteExpiration); Logger.Warn("GET: " + uri + " " + path); APIResponseTime.calculateResponseCount(uri, ex.GetType().ToString()); Logger.Warn(ex.ToString()); return(null); } } }