internal ListedResponse <T> AccessJsonParameteredApiArrayImpl <T>(string url, IEnumerable <KeyValuePair <string, object> > parameters, string[] jsonMap, string jsonPath, string urlPrefix, string urlSuffix) { var connectionOptions = this.ConnectionOptions; if (urlPrefix != null || urlSuffix != null) { connectionOptions = this.ConnectionOptions.Clone(); if (urlPrefix != null) { connectionOptions.UrlPrefix = urlPrefix; } if (urlSuffix != null) { connectionOptions.UrlSuffix = urlSuffix; } } using (var response = this.SendJsonRequest(InternalUtils.GetUrl(connectionOptions, url), parameters, jsonMap)) using (var sr = new StreamReader(response.GetResponseStream())) { var json = sr.ReadToEnd(); var list = CoreBase.ConvertArray <T>(json, jsonPath); return(new ListedResponse <T>(list, InternalUtils.ReadRateLimit(response), json)); } }
internal ListedResponse <T> AccessApiArrayImpl <T>(MethodType type, string url, IEnumerable <KeyValuePair <string, object> > parameters, string jsonPath) { using (var response = this.SendRequestImpl(type, InternalUtils.GetUrl(this.ConnectionOptions, url), parameters)) using (var sr = new StreamReader(response.GetResponseStream())) { var json = sr.ReadToEnd(); var list = CoreBase.ConvertArray <T>(json, jsonPath); return(new ListedResponse <T>(list, InternalUtils.ReadRateLimit(response), json)); } }
internal Task <ListedResponse <T> > AccessApiArrayAsyncImpl <T>(MethodType type, string url, IEnumerable <KeyValuePair <string, object> > parameters, CancellationToken cancellationToken, string jsonPath, string urlPrefix, string urlSuffix) { var connectionOptions = this.ConnectionOptions; if (urlPrefix != null || urlSuffix != null) { connectionOptions = this.ConnectionOptions.Clone(); if (urlPrefix != null) { connectionOptions.UrlPrefix = urlPrefix; } if (urlSuffix != null) { connectionOptions.UrlSuffix = urlSuffix; } } return(this.SendRequestAsyncImpl(type, InternalUtils.GetUrl(connectionOptions, url), parameters, cancellationToken) .ReadResponse(s => new ListedResponse <T>(CoreBase.ConvertArray <T>(s, jsonPath)), cancellationToken)); }
internal Task <ListedResponse <T> > AccessApiArrayAsyncImpl <T>(MethodType type, string url, IEnumerable <KeyValuePair <string, object> > parameters, CancellationToken cancellationToken, string jsonPath) { return(this.SendRequestAsyncImpl(type, InternalUtils.GetUrl(this.ConnectionOptions, url), parameters, cancellationToken) .ReadResponse(s => new ListedResponse <T>(CoreBase.ConvertArray <T>(s, jsonPath)), cancellationToken)); }
internal IEnumerable <T> AccessApiArray <T>(MethodType type, string url, IDictionary <string, object> parameters, string jsonPath = "") { using (var s = this.SendRequest(type, InternalUtils.GetUrl(url), parameters)) using (var sr = new StreamReader(s)) return(CoreBase.ConvertArray <T>(this, sr.ReadToEnd(), jsonPath)); }