You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2014/05/22 21:45:59 UTC

svn commit: r1596951 - /httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.java

Author: olegk
Date: Thu May 22 19:45:59 2014
New Revision: 1596951

URL: http://svn.apache.org/r1596951
Log:
Apply initial socket parameters prior to bind operation

Modified:
    httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.java

Modified: httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.java?rev=1596951&r1=1596950&r2=1596951&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.java (original)
+++ httpcomponents/httpclient/trunk/httpclient/src/main/java/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.java Thu May 22 19:45:59 2014
@@ -114,7 +114,14 @@ public class DefaultHttpClientConnection
             final boolean last = i == addresses.length - 1;
 
             Socket sock = sf.createSocket(context);
+            sock.setSoTimeout(socketConfig.getSoTimeout());
             sock.setReuseAddress(socketConfig.isSoReuseAddress());
+            sock.setTcpNoDelay(socketConfig.isTcpNoDelay());
+            sock.setKeepAlive(socketConfig.isSoKeepAlive());
+            final int linger = socketConfig.getSoLinger();
+            if (linger >= 0) {
+                sock.setSoLinger(true, linger);
+            }
             conn.bind(sock);
 
             final InetSocketAddress remoteAddress = new InetSocketAddress(address, port);
@@ -122,15 +129,8 @@ public class DefaultHttpClientConnection
                 this.log.debug("Connecting to " + remoteAddress);
             }
             try {
-                sock.setSoTimeout(socketConfig.getSoTimeout());
                 sock = sf.connectSocket(
                         connectTimeout, sock, host, remoteAddress, localAddress, context);
-                sock.setTcpNoDelay(socketConfig.isTcpNoDelay());
-                sock.setKeepAlive(socketConfig.isSoKeepAlive());
-                final int linger = socketConfig.getSoLinger();
-                if (linger >= 0) {
-                    sock.setSoLinger(true, linger);
-                }
                 conn.bind(sock);
                 if (this.log.isDebugEnabled()) {
                     this.log.debug("Connection established " + conn);