Skip to content

Commit f9985ed

Browse files
authored
Allow configurable HttpHandler parameters (#837)
1 parent 7936814 commit f9985ed

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

src/KubernetesClient/Kubernetes.ConfigInit.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,7 @@ private void CreateHttpClient(DelegatingHandler[] handlers, KubernetesClientConf
126126
#else
127127
FirstMessageHandler = HttpClientHandler = new HttpClientHandler();
128128
#endif
129+
config.FirstMessageHandlerSetup?.Invoke(HttpClientHandler);
129130

130131
if (handlers != null)
131132
{

src/KubernetesClient/KubernetesClientConfiguration.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
using System.Net.Http;
12
using System.Security.Cryptography.X509Certificates;
23
using k8s.Autorest;
34

@@ -89,5 +90,18 @@ public partial class KubernetesClientConfiguration
8990
/// </summary>
9091
/// <value>timeout</value>
9192
public TimeSpan HttpClientTimeout { get; set; } = TimeSpan.FromSeconds(100);
93+
94+
/// <summary>
95+
/// Gets or sets the FirstMessageHandler setup callback.
96+
/// </summary>
97+
/// <remarks>
98+
/// Allow custom configuration of the first http handler.
99+
/// </remarks>
100+
/// <value>The FirstMessageHandler factory.</value>
101+
#if NET5_0_OR_GREATER
102+
public Action<SocketsHttpHandler> FirstMessageHandlerSetup { get; set; }
103+
#else
104+
public Action<HttpClientHandler> FirstMessageHandlerSetup { get; set; }
105+
#endif
92106
}
93107
}

0 commit comments

Comments
 (0)