Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit088948a

Browse files
author
oleksiys
committed
+ related to the issue
AsyncHttpClient#1109
1 parentd500dd7 commit088948a

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

‎src/main/java/com/ning/http/client/providers/grizzly/ConnectionManager.java‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
importorg.glassfish.grizzly.Grizzly;
3333
importorg.glassfish.grizzly.GrizzlyFuture;
3434
importorg.glassfish.grizzly.attributes.Attribute;
35+
importorg.glassfish.grizzly.connectionpool.ConnectionInfo;
3536
importorg.glassfish.grizzly.connectionpool.Endpoint;
3637
importorg.glassfish.grizzly.connectionpool.MultiEndpointPool;
3738
importorg.glassfish.grizzly.connectionpool.SingleEndpointPool;
@@ -209,6 +210,11 @@ void destroy() {
209210
pool.close();
210211
}
211212

213+
booleanisReadyInPool(finalConnectionc) {
214+
finalConnectionInfo<SocketAddress>ci =pool.getConnectionInfo(c);
215+
returnci !=null &&ci.isReady();
216+
}
217+
212218
staticbooleanisKeepAlive(finalConnectionconnection) {
213219
return !IS_NOT_KEEP_ALIVE.isSet(connection);
214220
}

‎src/main/java/com/ning/http/client/providers/grizzly/GrizzlyAsyncHttpProvider.java‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,8 +253,15 @@ protected void initializeTransport(final AsyncHttpClientConfig clientConfig) {
253253
newIdleTimeoutFilter.TimeoutResolver() {
254254
@Override
255255
publiclonggetTimeout(finalFilterChainContextctx) {
256+
finalConnectionconnection =ctx.getConnection();
257+
258+
if (connectionManager.isReadyInPool(connection)) {
259+
// if the connection is in pool - let ConnectionManager take care of its life cycle
260+
returnIdleTimeoutFilter.FOREVER;
261+
}
262+
256263
finalHttpTransactionContextcontext
257-
=HttpTransactionContext.currentTransaction(ctx.getConnection());
264+
=HttpTransactionContext.currentTransaction(connection);
258265
if (context !=null) {
259266
if (context.isWSRequest) {
260267
returnclientConfig.getWebSocketTimeout();

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp