Example #1
0
        public async Task <Response <Request> > Build(
            string httpMethod,
            string downstreamUrl,
            Stream content,
            IHeaderDictionary headers,
            IRequestCookieCollection cookies,
            QueryString queryString,
            string contentType,
            RequestId.RequestId requestId,
            bool isQos,
            IQoSProvider qosProvider)
        {
            var request = await new RequestBuilder()
                          .WithHttpMethod(httpMethod)
                          .WithDownstreamUrl(downstreamUrl)
                          .WithQueryString(queryString)
                          .WithContent(content)
                          .WithContentType(contentType)
                          .WithHeaders(headers)
                          .WithRequestId(requestId)
                          .WithCookies(cookies)
                          .WithIsQos(isQos)
                          .WithQos(qosProvider)
                          .Build();

            return(new OkResponse <Request>(request));
        }
Example #2
0
 public RequestBuilder WithRequestId(RequestId.RequestId requestId)
 {
     _requestId = requestId;
     return(this);
 }
Example #3
0
 private bool ShouldAddRequestId(RequestId.RequestId requestId, HttpRequestHeaders headers)
 {
     return(!string.IsNullOrEmpty(requestId?.RequestIdKey) &&
            !string.IsNullOrEmpty(requestId.RequestIdValue) &&
            !RequestIdInHeaders(requestId, headers));
 }
Example #4
0
        private bool RequestIdInHeaders(RequestId.RequestId requestId, HttpRequestHeaders headers)
        {
            IEnumerable <string> value;

            return(headers.TryGetValues(requestId.RequestIdKey, out value));
        }
Example #5
0
 private void AddRequestIdHeader(RequestId.RequestId requestId, HttpRequestMessage httpRequestMessage)
 {
     httpRequestMessage.Headers.Add(requestId.RequestIdKey, requestId.RequestIdValue);
 }