Exemplo n.º 1
0
        private static async Task SendRequestAsync <T>(T task, HttpMethod requestType)
        {
            //configuring message
            var endpoint    = requestType == HttpMethod.Put ? "change" : "add";
            var json        = JsonManager.MakeJson(task);
            var req_message = new HttpRequestMessage(requestType, new Uri(http, endpoint))
            {
                Content = new StringContent(json, Encoding.UTF8, "application/json")
            };

            //sending request
            try
            {
                using (var client = new HttpClient {
                    Timeout = WaitingTime
                })
                    SynchChanged?.Invoke(ClassifyResponse(await client.SendAsync(req_message)));
            }
            catch (Exception ex)
            {
                IsSyncSuccessful = false;
                if (ex is HttpRequestException)
                {
                    SynchChanged?.Invoke(SyncState.Impossible);
                }
                if (ex is TaskCanceledException)
                {
                    SynchChanged?.Invoke(SyncState.Failed);
                }
            }
        }
Exemplo n.º 2
0
 public static void SaveCurrentSession(T session)
 => SaveSessionJson(JsonManager.MakeJson(session));