/// <inheritdoc/> public async Task <HttpResponse <T> > GetAsync <T>( HttpRequest request, RequestContext requestContext, CancellationToken cancellationToken) where T : Resource, new() { PrepareRequest(request, requestContext); var response = await _requestExecutor.GetAsync(request.Uri, request.Headers, cancellationToken).ConfigureAwait(false); EnsureResponseSuccess(response); var data = _serializer.Deserialize(PayloadOrEmpty(response)); var resource = _resourceFactory.CreateNew <T>(data); return(CreateResourceResponse(response, resource)); }