示例#1
0
        private DelugeResponse <TResult> ProcessRequest <TResult>(IRestClient client, string action, object[] arguments)
        {
            var request = new RestRequest(Method.POST);

            request.Resource      = "json";
            request.RequestFormat = DataFormat.Json;
            request.AddHeader("Accept-Encoding", "gzip,deflate");

            var data = new Dictionary <string, object>();

            data.Add("id", GetCallId());
            data.Add("method", action);

            if (arguments != null)
            {
                data.Add("params", arguments);
            }

            request.AddBody(data);

            _logger.Debug("Url: {0} Action: {1}", client.BuildUri(request), action);
            var response = client.ExecuteAndValidate <DelugeResponse <TResult> >(request);

            return(response);
        }