@@ -70,8 +70,7 @@ public abstract class Protocol {
70
70
REDIRECT_STATUSES .add (TEMPORARY_REDIRECT .code ());
71
71
}
72
72
73
- public Protocol (ChannelManager channelManager , AsyncHttpClientConfig config , NettyAsyncHttpProviderConfig nettyConfig ,
74
- NettyRequestSender requestSender ) {
73
+ public Protocol (ChannelManager channelManager , AsyncHttpClientConfig config , NettyAsyncHttpProviderConfig nettyConfig , NettyRequestSender requestSender ) {
75
74
this .channelManager = channelManager ;
76
75
this .config = config ;
77
76
this .requestSender = requestSender ;
@@ -127,16 +126,20 @@ protected boolean exitAfterHandlingRedirect(//
127
126
boolean switchToGet = !originalMethod .equals ("GET" ) && (statusCode == 303 || (statusCode == 302 && !config .isStrict302Handling ()));
128
127
129
128
final RequestBuilder requestBuilder = new RequestBuilder (switchToGet ? "GET" : originalMethod )//
129
+ .setCookies (request .getCookies ())//
130
130
.setConnectionPoolPartitioning (request .getConnectionPoolPartitioning ())//
131
- .setInetAddress ( request . getInetAddress () )//
131
+ .setFollowRedirect ( true )//
132
132
.setLocalInetAddress (request .getLocalAddress ())//
133
- .setVirtualHost (request .getVirtualHost ())//
133
+ .setNameResolver (request .getNameResolver ())//
134
134
.setProxyServer (request .getProxyServer ())//
135
- .setRealm (request .getRealm ());
135
+ .setRealm (request .getRealm ())//
136
+ .setRequestTimeout (request .getRequestTimeout ())//
137
+ .setVirtualHost (request .getVirtualHost ());
136
138
137
139
requestBuilder .setHeaders (propagatedHeaders (request , realm , switchToGet ));
138
140
139
- // in case of a redirect from HTTP to HTTPS, future attributes might change
141
+ // in case of a redirect from HTTP to HTTPS, future
142
+ // attributes might change
140
143
final boolean initialConnectionKeepAlive = future .isKeepAlive ();
141
144
final Object initialPartitionKey = future .getPartitionKey ();
142
145
@@ -176,7 +179,7 @@ protected boolean exitAfterHandlingRedirect(//
176
179
channelManager .closeChannel (channel );
177
180
requestSender .sendNextRequest (nextRequest , future );
178
181
}
179
-
182
+
180
183
return true ;
181
184
}
182
185
}
@@ -193,8 +196,8 @@ protected boolean exitAfterProcessingFilters(//
193
196
HttpResponseHeaders responseHeaders ) throws IOException {
194
197
195
198
if (hasResponseFilters ) {
196
- FilterContext fc = new FilterContext .FilterContextBuilder ().asyncHandler (handler ).request (future .getRequest ())
197
- .responseStatus ( status ). responseHeaders ( responseHeaders ). build ();
199
+ FilterContext fc = new FilterContext .FilterContextBuilder ().asyncHandler (handler ).request (future .getRequest ()). responseStatus ( status ). responseHeaders ( responseHeaders )
200
+ .build ();
198
201
199
202
for (ResponseFilter asyncFilter : config .getResponseFilters ()) {
200
203
try {
0 commit comments