Skip to content

Commit 49925e9

Browse files
feat(gzip): Adding gzip support for framework 4.5 or above. (#218)
1 parent 1c67986 commit 49925e9

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

OptimizelySDK.Tests/ConfigTest/HttpProjectConfigManagerTest.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
using NUnit.Framework;
1919
using OptimizelySDK.Config;
2020
using OptimizelySDK.Logger;
21-
using OptimizelySDK.Notifications;
2221
using OptimizelySDK.Tests.NotificationTests;
2322
using System;
2423
using System.Diagnostics;
@@ -55,6 +54,13 @@ public void TestHttpConfigManagerRetreiveProjectConfigByURL()
5554
Assert.NotNull(httpManager.GetConfig());
5655
}
5756

57+
[Test]
58+
public void TestHttpClientHandler()
59+
{
60+
var httpConfigHandler = HttpProjectConfigManager.GetHttpClientHandler();
61+
Assert.IsTrue(httpConfigHandler.AutomaticDecompression == (System.Net.DecompressionMethods.Deflate | System.Net.DecompressionMethods.GZip));
62+
}
63+
5864
[Test]
5965
public void TestHttpConfigManagerRetreiveProjectConfigGivenEmptyFormatUseDefaultFormat()
6066
{

OptimizelySDK/Config/HttpProjectConfigManager.cs

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,20 @@ public Task OnReady()
4242

4343
#if !NET40 && !NET35
4444
private static System.Net.Http.HttpClient Client;
45-
static HttpProjectConfigManager() {
46-
Client = new System.Net.Http.HttpClient();
45+
static HttpProjectConfigManager()
46+
{
47+
Client = new System.Net.Http.HttpClient(GetHttpClientHandler());
4748
}
49+
50+
public static System.Net.Http.HttpClientHandler GetHttpClientHandler()
51+
{
52+
var handler = new System.Net.Http.HttpClientHandler() {
53+
AutomaticDecompression = System.Net.DecompressionMethods.GZip | System.Net.DecompressionMethods.Deflate
54+
};
55+
56+
return handler;
57+
}
58+
4859
private string GetRemoteDatafileResponse()
4960
{
5061
var request = new System.Net.Http.HttpRequestMessage {

0 commit comments

Comments
 (0)