public ApiResultObject <T> GetRO <T>(string uri, ApiConsumer consumer, CommonParam commonParam, object filter, int?timeout, params object[] listParam) { ApiResultObject <T> result = null; try { if (timeout.HasValue) { result = consumer.Get <ApiResultObject <T> >(uri, commonParam, filter, timeout.Value, listParam); } else { result = consumer.Get <ApiResultObject <T> >(uri, commonParam, filter, listParam); } if (result != null) { if (result.Param != null) { this.param.Messages.AddRange(result.Param.Messages); this.param.BugCodes.AddRange(result.Param.BugCodes); } } if (result == null || !result.Success || result.Data == null) { this.Input = LogUtil.TraceData("\n + filter", filter) + LogUtil.TraceData("\n + CommonParam", commonParam) + LogUtil.TraceData("\n + listParam", listParam); this.RequestUrl = String.Format(uriFormat, consumer.GetBaseUri(), uri); Logging(JsonConvert.SerializeObject(result), LogType.Error); } } catch (ApiException ex) { LogSystem.Error(LogUtil.TraceData("StatusCode: ", ex.StatusCode)); LogSystem.Error(ex); if (ex.StatusCode == System.Net.HttpStatusCode.NotFound) { this.param.Messages.Add(STR_CANNOT_CONNECT_TO_SERVER); } else if (ex.StatusCode == System.Net.HttpStatusCode.Unauthorized) { param.Messages.Add(STR_SESSION_TIMEOUT); param.HasException = true; } } catch (AggregateException ex) { LogSystem.Error(ex); this.param.Messages.Add(STR_CANNOT_CONNECT_TO_SERVER); } catch (Exception ex) { LogSystem.Error(ex); } return(result); }