Skip to content

Commit 3b5c815

Browse files
committed
HTTPCLIENT-2338: put compress exec interceptor after retry exec interceptor
1 parent 1240971 commit 3b5c815

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

httpclient5/src/main/java/org/apache/hc/client5/http/impl/classic/HttpClientBuilder.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -962,6 +962,22 @@ public CloseableHttpClient build() {
962962
authCachingDisabled),
963963
ChainElement.PROTOCOL.name());
964964

965+
if (!contentCompressionDisabled) {
966+
if (contentDecoderMap != null) {
967+
final List<String> encodings = new ArrayList<>(contentDecoderMap.keySet());
968+
final RegistryBuilder<InputStreamFactory> b2 = RegistryBuilder.create();
969+
for (final Map.Entry<String, InputStreamFactory> entry: contentDecoderMap.entrySet()) {
970+
b2.register(entry.getKey(), entry.getValue());
971+
}
972+
final Registry<InputStreamFactory> decoderRegistry = b2.build();
973+
execChainDefinition.addFirst(
974+
new ContentCompressionExec(encodings, decoderRegistry, true),
975+
ChainElement.COMPRESS.name());
976+
} else {
977+
execChainDefinition.addFirst(new ContentCompressionExec(true), ChainElement.COMPRESS.name());
978+
}
979+
}
980+
965981
// Add request retry executor, if not disabled
966982
if (!automaticRetriesDisabled) {
967983
HttpRequestRetryStrategy retryStrategyCopy = this.retryStrategy;
@@ -991,22 +1007,6 @@ public CloseableHttpClient build() {
9911007
}
9921008
}
9931009

994-
if (!contentCompressionDisabled) {
995-
if (contentDecoderMap != null) {
996-
final List<String> encodings = new ArrayList<>(contentDecoderMap.keySet());
997-
final RegistryBuilder<InputStreamFactory> b2 = RegistryBuilder.create();
998-
for (final Map.Entry<String, InputStreamFactory> entry: contentDecoderMap.entrySet()) {
999-
b2.register(entry.getKey(), entry.getValue());
1000-
}
1001-
final Registry<InputStreamFactory> decoderRegistry = b2.build();
1002-
execChainDefinition.addFirst(
1003-
new ContentCompressionExec(encodings, decoderRegistry, true),
1004-
ChainElement.COMPRESS.name());
1005-
} else {
1006-
execChainDefinition.addFirst(new ContentCompressionExec(true), ChainElement.COMPRESS.name());
1007-
}
1008-
}
1009-
10101010
// Add redirect executor, if not disabled
10111011
if (!redirectHandlingDisabled) {
10121012
RedirectStrategy redirectStrategyCopy = this.redirectStrategy;

0 commit comments

Comments
 (0)