예제 #1
0
        public async Task <T> ProcessResponseAsync <T>(IHttpResponse <T> response, ProxyBase proxy) where T : class
        {
            if (response.RefusedConnection)
            {
                proxy.SetConnectionRefusedError();
                return(null);
            }

            if (response.Message.IsSuccessStatusCode)
            {
                return(response.Data);
            }

            if (response.Message.IsBad())
            {
                await proxy.ProcessErrorAsync(response.Message);

                return(null);
            }

            if (response.Message.IsUnauthorised())
            {
                await proxy.ProcessErrorAsync(response.Message);

                return(null);
            }

            proxy.SetConnectionRefusedError();
            return(null);
        }
예제 #2
0
        public async Task ProcessResponseAsync(IHttpResponse response, ProxyBase proxy)
        {
            if (response.RefusedConnection)
            {
                proxy.SetConnectionRefusedError();
                return;
            }

            if (response.Message.IsSuccessStatusCode)
            {
                return;
            }

            if (response.Message.IsBad())
            {
                await proxy.ProcessErrorAsync(response.Message);

                return;
            }

            if (response.Message.IsUnauthorised())
            {
                await proxy.ProcessErrorAsync(response.Message);

                return;
            }

            proxy.SetConnectionRefusedError();
        }