Exemple #1
0
        static private EvResponse GetResp(HttpResponseMessage resp)
        {
            Task <byte[]> readTask = Task.Run(
                async() => await resp.Content.ReadAsByteArrayAsync());

            byte[] byteArray = readTask.Result;

            string body = Encoding.UTF8.GetString(byteArray, 0, byteArray.Length);

            Dict       js     = JsonConvert.DeserializeObject <Dict>(body);
            EvResponse evresp = new EvResponse(js);

            if (evresp.GetStatus() == EvResponseStatus.Success)
            {
                return(evresp);
            }
            else if (evresp.GetStatus() == EvResponseStatus.Error)
            {
                throw evresp.GetError();
            }
            else
            {
                throw new Exception($"Got invalid response status: {evresp.GetStatus()}");
            }
        }
Exemple #2
0
        public Dict IssueCommand(Dict cmd)
        {
            string      body    = JsonConvert.SerializeObject(cmd);
            HttpContent content = new StringContent(body, Encoding.UTF8);

            Task <HttpResponseMessage> postTask = Task.Run(
                async() => await Session.PostAsync(GetUrl(), content));
            HttpResponseMessage resp = postTask.Result;

            EvResponse evresp = GetResp(resp);

            return(evresp.GetOutput());
        }