Пример #1
0
        public static async Task <HttpResponseMessage> PatchWithAuthenticationAsync(
            this HttpClient client,
            string requestUri,
            Stream contentDataStream,
            string streamContentType,
            int bufferSize,
            IAuthenticationHeaderGenerator authenticationHeaderGenerator,
            ILogger logger,
            CancellationToken cancellationToken = default)
        {
            client.DefaultRequestHeaders.Authorization =
                authenticationHeaderGenerator.GenerateAuthenticationHeader(requestUri);

            using (var content = new StreamContent(contentDataStream, bufferSize)
            {
                Headers =
                {
                    ContentType = new MediaTypeHeaderValue(streamContentType),
                }
            })
            {
                logger?.LogDebug("Added auth header to {Verb} call to {RequestUri}", "PATCH", requestUri);
                return(await client.SendAsync(
                           new HttpRequestMessage(new HttpMethod("PATCH"), requestUri)
                {
                    Content = content,
                    Headers =
                    {
                        TransferEncodingChunked = true,
                    }
                },
                           cancellationToken).ConfigureAwait(false));
            };
        }
Пример #2
0
 public ValueTypeHttpClientRepositoryBase(
     IHttpClientConfiguration config,
     IAuthenticationHeaderGenerator authenticationHeaderGenerator,
     ILogger <ValueTypeHttpClientRepositoryBase <TIdentity, TNaturalKey, TItem> > logger = null)
     : base(config, authenticationHeaderGenerator, logger)
 {
 }
Пример #3
0
 public HttpClientRepositoryBase(
     IHttpClientConfiguration config,
     IAuthenticationHeaderGenerator authenticationHeaderGenerator,
     ILogger <HttpClientRepositoryBase <TIdentity, TItem> > logger = null)
 {
     this.Config = config;
     this.AuthenticationHeaderGenerator = authenticationHeaderGenerator;
     this.Logger = logger;
 }
Пример #4
0
 public static async Task <HttpResponseMessage> DeleteWithAuthenticationAsync(
     this HttpClient client,
     string requestUri,
     IAuthenticationHeaderGenerator authenticationHeaderGenerator,
     ILogger logger,
     CancellationToken cancellationToken = default)
 {
     client.DefaultRequestHeaders.Authorization =
         authenticationHeaderGenerator.GenerateAuthenticationHeader(requestUri);
     logger?.LogDebug("Added auth header to {Verb} call to {RequestUri}", "DELETE", requestUri);
     return(await client.DeleteAsync(requestUri, cancellationToken).ConfigureAwait(false));
 }
Пример #5
0
 public static async Task <HttpResponseMessage> PatchWithAuthenticationAsync(
     this HttpClient client,
     string requestUri,
     string jsonContent,
     IAuthenticationHeaderGenerator authenticationHeaderGenerator,
     ILogger logger,
     CancellationToken cancellationToken = default)
 {
     client.DefaultRequestHeaders.Authorization =
         authenticationHeaderGenerator.GenerateAuthenticationHeader(requestUri, jsonContent);
     logger?.LogDebug("Added auth header to {Verb} call to {RequestUri}", "PATCH", requestUri);
     return(await client.PatchAsync(requestUri, new StringContent(jsonContent, Encoding.UTF8, "application/json"), cancellationToken).ConfigureAwait(false));
 }
Пример #6
0
 public static async Task <Stream> GetStreamWithAuthenticationAsync(
     this HttpClient client,
     string requestUri,
     IAuthenticationHeaderGenerator authenticationHeaderGenerator,
     ILogger logger,
     CancellationToken cancellationToken = default)
 {
     client.DefaultRequestHeaders.Authorization =
         authenticationHeaderGenerator.GenerateAuthenticationHeader(requestUri);
     cancellationToken.ThrowIfCancellationRequested();
     logger?.LogDebug("Added auth header to {Verb} call to {RequestUri}", "GET", requestUri);
     return(await client.GetStreamAsync(requestUri).ConfigureAwait(false));
 }
Пример #7
0
        public HttpClientDataSinkBase(
            IHttpClientConfiguration config,
            IAuthenticationHeaderGenerator authenticationHeaderGenerator,
            ILogger <HttpClientDataSinkBase> logger = null)
        {
            Contract.Requires(config != null);
            Contract.Requires(authenticationHeaderGenerator != null);
            Contract.Ensures(this.Config != null);
            Contract.Ensures(this.AuthenticationHeaderGenerator != null);

            this.Config = config;
            this.AuthenticationHeaderGenerator = authenticationHeaderGenerator;
            this.Logger = logger;
        }
Пример #8
0
 public static async Task <HttpResponseMessage> PatchWithAuthenticationAsync(
     this HttpClient client,
     string requestUri,
     Stream contentDataStream,
     string streamContentType,
     IAuthenticationHeaderGenerator authenticationHeaderGenerator,
     ILogger logger,
     CancellationToken cancellationToken = default)
 {
     return(await client.PatchWithAuthenticationAsync(
                requestUri,
                contentDataStream,
                streamContentType,
                81920,
                authenticationHeaderGenerator,
                logger,
                cancellationToken).ConfigureAwait(false));
 }