diff --git a/CHANGES.txt b/CHANGES.txt
index 5018ca452..5a060d81e 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,3 +1,6 @@
+4.10.1 (Nov 9, 2023)
+- Fixed handler for response http headers.
+
4.10.0 (Nov 2, 2023)
- Added support for Flag Sets on the SDK, which enables grouping feature flags and interacting with the group rather than individually (more details in our documentation):
- Added new variations of the get treatment methods to support evaluating flags in given flag set/s.
diff --git a/client/pom.xml b/client/pom.xml
index 26483d47b..131bfe230 100644
--- a/client/pom.xml
+++ b/client/pom.xml
@@ -5,7 +5,7 @@
io.split.client
java-client-parent
- 4.10.0
+ 4.10.1
java-client
jar
diff --git a/client/src/main/java/io/split/client/HttpSegmentChangeFetcher.java b/client/src/main/java/io/split/client/HttpSegmentChangeFetcher.java
index ef676de6e..84bf09509 100644
--- a/client/src/main/java/io/split/client/HttpSegmentChangeFetcher.java
+++ b/client/src/main/java/io/split/client/HttpSegmentChangeFetcher.java
@@ -14,7 +14,6 @@
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
import org.apache.hc.core5.http.HttpStatus;
-import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.io.entity.EntityUtils;
import org.apache.hc.core5.net.URIBuilder;
import org.slf4j.Logger;
@@ -23,8 +22,6 @@
import java.net.URI;
import java.net.URISyntaxException;
import java.nio.charset.StandardCharsets;
-import java.util.Arrays;
-import java.util.stream.Collectors;
import static com.google.common.base.Preconditions.checkNotNull;
@@ -40,9 +37,6 @@ public final class HttpSegmentChangeFetcher implements SegmentChangeFetcher {
private static final String CACHE_CONTROL_HEADER_NAME = "Cache-Control";
private static final String CACHE_CONTROL_HEADER_VALUE = "no-cache";
- private static final String HEADER_FASTLY_DEBUG_NAME = "Fastly-Debug";
- private static final String HEADER_FASTLY_DEBUG_VALUE = "1";
-
private final CloseableHttpClient _client;
private final URI _target;
private final TelemetryRuntimeProducer _telemetryRuntimeProducer;
@@ -81,15 +75,8 @@ public SegmentChange fetch(String segmentName, long since, FetchOptions options)
request.setHeader(CACHE_CONTROL_HEADER_NAME, CACHE_CONTROL_HEADER_VALUE);
}
- if (options.fastlyDebugHeaderEnabled()) {
- request.addHeader(HEADER_FASTLY_DEBUG_NAME, HEADER_FASTLY_DEBUG_VALUE);
- }
-
response = _client.execute(request);
- options.handleResponseHeaders(Arrays.stream(response.getHeaders())
- .collect(Collectors.toMap(Header::getName, Header::getValue)));
-
int statusCode = response.getCode();
if (_log.isDebugEnabled()) {
diff --git a/client/src/main/java/io/split/client/HttpSplitChangeFetcher.java b/client/src/main/java/io/split/client/HttpSplitChangeFetcher.java
index e4bd7c3d4..65d37d144 100644
--- a/client/src/main/java/io/split/client/HttpSplitChangeFetcher.java
+++ b/client/src/main/java/io/split/client/HttpSplitChangeFetcher.java
@@ -14,7 +14,6 @@
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
import org.apache.hc.client5.http.impl.classic.CloseableHttpResponse;
import org.apache.hc.core5.http.HttpStatus;
-import org.apache.hc.core5.http.Header;
import org.apache.hc.core5.http.io.entity.EntityUtils;
import org.apache.hc.core5.net.URIBuilder;
import org.slf4j.Logger;
@@ -23,8 +22,6 @@
import java.net.URI;
import java.net.URISyntaxException;
import java.nio.charset.StandardCharsets;
-import java.util.Arrays;
-import java.util.stream.Collectors;
import static com.google.common.base.Preconditions.checkNotNull;
@@ -41,9 +38,6 @@ public final class HttpSplitChangeFetcher implements SplitChangeFetcher {
private static final String HEADER_CACHE_CONTROL_NAME = "Cache-Control";
private static final String HEADER_CACHE_CONTROL_VALUE = "no-cache";
- private static final String HEADER_FASTLY_DEBUG_NAME = "Fastly-Debug";
- private static final String HEADER_FASTLY_DEBUG_VALUE = "1";
-
private final CloseableHttpClient _client;
private final URI _target;
private final TelemetryRuntimeProducer _telemetryRuntimeProducer;
@@ -87,13 +81,7 @@ public SplitChange fetch(long since, FetchOptions options) {
request.setHeader(HEADER_CACHE_CONTROL_NAME, HEADER_CACHE_CONTROL_VALUE);
}
- if (options.fastlyDebugHeaderEnabled()) {
- request.addHeader(HEADER_FASTLY_DEBUG_NAME, HEADER_FASTLY_DEBUG_VALUE);
- }
-
response = _client.execute(request);
- options.handleResponseHeaders(Arrays.stream(response.getHeaders())
- .collect(Collectors.toMap(Header::getName, Header::getValue)));
int statusCode = response.getCode();
diff --git a/client/src/main/java/io/split/client/SplitClientConfig.java b/client/src/main/java/io/split/client/SplitClientConfig.java
index de6ea4ecf..11e2ec2bc 100644
--- a/client/src/main/java/io/split/client/SplitClientConfig.java
+++ b/client/src/main/java/io/split/client/SplitClientConfig.java
@@ -73,7 +73,6 @@ public class SplitClientConfig {
private final int _uniqueKeysRefreshRateInMemory;
private final int _uniqueKeysRefreshRateRedis;
private static int _filterUniqueKeysRefreshRate;
- private final boolean _cdnDebugLogging;
private final OperationMode _operationMode;
private long _validateAfterInactivityInMillis;
private final long _startingSyncCallBackoffBaseMs;
@@ -135,7 +134,6 @@ private SplitClientConfig(String endpoint,
int onDemandFetchRetryDelayMs,
int onDemandFetchMaxRetries,
int failedAttemptsBeforeLogging,
- boolean cdnDebugLogging,
OperationMode operationMode,
long validateAfterInactivityInMillis,
long startingSyncCallBackoffBaseMs,
@@ -190,7 +188,6 @@ private SplitClientConfig(String endpoint,
_onDemandFetchRetryDelayMs = onDemandFetchRetryDelayMs;
_onDemandFetchMaxRetries = onDemandFetchMaxRetries;
_failedAttemptsBeforeLogging = failedAttemptsBeforeLogging;
- _cdnDebugLogging = cdnDebugLogging;
_operationMode = operationMode;
_storageMode = storageMode;
_validateAfterInactivityInMillis = validateAfterInactivityInMillis;
@@ -367,8 +364,6 @@ public int get_telemetryRefreshRate() {
public int failedAttemptsBeforeLogging() {return _failedAttemptsBeforeLogging;}
- public boolean cdnDebugLogging() { return _cdnDebugLogging; }
-
public OperationMode operationMode() { return _operationMode;}
public long validateAfterInactivityInMillis() {
@@ -445,7 +440,6 @@ public static final class Builder {
private int _onDemandFetchRetryDelayMs = 50;
private final int _onDemandFetchMaxRetries = 10;
private final int _failedAttemptsBeforeLogging = 10;
- private final boolean _cdnDebugLogging = true;
private OperationMode _operationMode = OperationMode.STANDALONE;
private long _validateAfterInactivityInMillis = 1000;
private static final long STARTING_SYNC_CALL_BACKOFF_BASE_MS = 1000; //backoff base starting at 1 seconds
@@ -1086,7 +1080,6 @@ public SplitClientConfig build() {
_onDemandFetchRetryDelayMs,
_onDemandFetchMaxRetries,
_failedAttemptsBeforeLogging,
- _cdnDebugLogging,
_operationMode,
_validateAfterInactivityInMillis,
STARTING_SYNC_CALL_BACKOFF_BASE_MS,
diff --git a/client/src/main/java/io/split/engine/common/FetchOptions.java b/client/src/main/java/io/split/engine/common/FetchOptions.java
index f98e13ce8..926137135 100644
--- a/client/src/main/java/io/split/engine/common/FetchOptions.java
+++ b/client/src/main/java/io/split/engine/common/FetchOptions.java
@@ -1,8 +1,6 @@
package io.split.engine.common;
-import java.util.Map;
import java.util.Objects;
-import java.util.function.Function;
public class FetchOptions {
@@ -15,8 +13,6 @@ public Builder() {}
public Builder(FetchOptions opts) {
_targetCN = opts._targetCN;
_cacheControlHeaders = opts._cacheControlHeaders;
- _fastlyDebugHeader = opts._fastlyDebugHeader;
- _responseHeadersCallback = opts._responseHeadersCallback;
_flagSetsFilter = opts._flagSetsFilter;
}
@@ -25,16 +21,6 @@ public Builder cacheControlHeaders(boolean on) {
return this;
}
- public Builder fastlyDebugHeader(boolean on) {
- _fastlyDebugHeader = on;
- return this;
- }
-
- public Builder responseHeadersCallback(Function