On 30 April 2011 11:26,  <[email protected]> wrote:
> Author: olegk
> Date: Sat Apr 30 10:26:13 2011
> New Revision: 1098093
>
> URL: http://svn.apache.org/viewvc?rev=1098093&view=rev
> Log:
> Re-introduced timeout parameter for connection manager operations
>
> Modified:
>    
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/conn/params/ConnManagerParams.java
>    
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/impl/client/DefaultRequestDirector.java
>
> Modified: 
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/conn/params/ConnManagerParams.java
> URL: 
> http://svn.apache.org/viewvc/httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/conn/params/ConnManagerParams.java?rev=1098093&r1=1098092&r2=1098093&view=diff
> ==============================================================================
> --- 
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/conn/params/ConnManagerParams.java
>  (original)
> +++ 
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/conn/params/ConnManagerParams.java
>  Sat Apr 30 10:26:13 2011
> @@ -30,6 +30,7 @@ import org.apache.http.annotation.Immuta
>
>  import org.apache.http.conn.routing.HttpRoute;
>  import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;
> +import org.apache.http.params.CoreConnectionPNames;
>  import org.apache.http.params.HttpConnectionParams;
>  import org.apache.http.params.HttpParams;
>
> @@ -62,7 +63,11 @@ public final class ConnManagerParams imp
>         if (params == null) {
>             throw new IllegalArgumentException("HTTP parameters may not be 
> null");
>         }
> -        return params.getLongParameter(TIMEOUT, 0);
> +        Long param = (Long) params.getParameter(TIMEOUT);
> +        if (param != null) {
> +            return param.longValue();
> +        }
> +        return 
> params.getIntParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 0);
>     }

I'm not sure I understand why the 4.1.x changes are different from the
trunk changes.

Why does ConnManagerParams.getTimeout - above - now return
"http.connection.timeout" if "http.conn-manager.timeout" is not
defined?

If a default is to be applied, should that not be done in
DefaultRequestDirector instead?

In any case, I think the Javadoc needs to be updated to say what
parameters are involved.

>     /**
>
> Modified: 
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/impl/client/DefaultRequestDirector.java
> URL: 
> http://svn.apache.org/viewvc/httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/impl/client/DefaultRequestDirector.java?rev=1098093&r1=1098092&r2=1098093&view=diff
> ==============================================================================
> --- 
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/impl/client/DefaultRequestDirector.java
>  (original)
> +++ 
> httpcomponents/httpclient/branches/4.1.x/httpclient/src/main/java/org/apache/http/impl/client/DefaultRequestDirector.java
>  Sat Apr 30 10:26:13 2011
> @@ -74,6 +74,7 @@ import org.apache.http.conn.ClientConnec
>  import org.apache.http.conn.ClientConnectionRequest;
>  import org.apache.http.conn.ConnectionKeepAliveStrategy;
>  import org.apache.http.conn.ManagedClientConnection;
> +import org.apache.http.conn.params.ConnManagerParams;
>  import org.apache.http.conn.routing.BasicRouteDirector;
>  import org.apache.http.conn.routing.HttpRoute;
>  import org.apache.http.conn.routing.HttpRouteDirector;
> @@ -130,6 +131,7 @@ import org.apache.http.util.EntityUtils;
>  *
>  * @since 4.0
>  */
> +@SuppressWarnings("deprecation")
>  @NotThreadSafe // e.g. managedConn
>  public class DefaultRequestDirector implements RequestDirector {
>
> @@ -360,8 +362,6 @@ public class DefaultRequestDirector impl
>
>         RoutedRequest roureq = new RoutedRequest(origWrapper, origRoute);
>
> -        long timeout = HttpConnectionParams.getConnectionTimeout(params);
> -
>         boolean reuse = false;
>         boolean done = false;
>         try {
> @@ -387,6 +387,7 @@ public class DefaultRequestDirector impl
>                         ((AbortableHttpRequest) 
> orig).setConnectionRequest(connRequest);
>                     }
>
> +                    long timeout = ConnManagerParams.getTimeout(params);

>                     try {
>                         managedConn = connRequest.getConnection(timeout, 
> TimeUnit.MILLISECONDS);
>                     } catch(InterruptedException interrupted) {
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to