.class public Lorg/apache/http/impl/client/DefaultRequestDirector; .super Ljava/lang/Object; .source "DefaultRequestDirector.java" # interfaces .implements Lorg/apache/http/client/RequestDirector; # annotations .annotation runtime Ljava/lang/Deprecated; .end annotation # instance fields .field private final authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; .field protected final connManager:Lorg/apache/http/conn/ClientConnectionManager; .field private execCount:I .field protected final httpProcessor:Lorg/apache/http/protocol/HttpProcessor; .field protected final keepAliveStrategy:Lorg/apache/http/conn/ConnectionKeepAliveStrategy; .field private final log:Lorg/apache/commons/logging/Log; .field protected managedConn:Lorg/apache/http/conn/ManagedClientConnection; .field private final maxRedirects:I .field protected final params:Lorg/apache/http/params/HttpParams; .field protected final proxyAuthHandler:Lorg/apache/http/client/AuthenticationHandler; .annotation runtime Ljava/lang/Deprecated; .end annotation .end field .field protected final proxyAuthState:Lorg/apache/http/auth/AuthState; .field protected final proxyAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; .field private redirectCount:I .field protected final redirectHandler:Lorg/apache/http/client/RedirectHandler; .annotation runtime Ljava/lang/Deprecated; .end annotation .end field .field protected final redirectStrategy:Lorg/apache/http/client/RedirectStrategy; .field protected final requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; .field protected final retryHandler:Lorg/apache/http/client/HttpRequestRetryHandler; .field protected final reuseStrategy:Lorg/apache/http/ConnectionReuseStrategy; .field protected final routePlanner:Lorg/apache/http/conn/routing/HttpRoutePlanner; .field protected final targetAuthHandler:Lorg/apache/http/client/AuthenticationHandler; .annotation runtime Ljava/lang/Deprecated; .end annotation .end field .field protected final targetAuthState:Lorg/apache/http/auth/AuthState; .field protected final targetAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; .field protected final userTokenHandler:Lorg/apache/http/client/UserTokenHandler; .field private virtualHost:Lorg/apache/http/HttpHost; # direct methods .method public constructor (Lorg/apache/commons/logging/Log;Lorg/apache/http/protocol/HttpRequestExecutor;Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/ConnectionReuseStrategy;Lorg/apache/http/conn/ConnectionKeepAliveStrategy;Lorg/apache/http/conn/routing/HttpRoutePlanner;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/client/HttpRequestRetryHandler;Lorg/apache/http/client/RedirectStrategy;Lorg/apache/http/client/AuthenticationHandler;Lorg/apache/http/client/AuthenticationHandler;Lorg/apache/http/client/UserTokenHandler;Lorg/apache/http/params/HttpParams;)V .registers 29 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 242 const-class v0, Lorg/apache/http/impl/client/DefaultRequestDirector; invoke-static {v0}, Lorg/apache/commons/logging/LogFactory;->getLog(Ljava/lang/Class;)Lorg/apache/commons/logging/Log; move-result-object v2 new-instance v11, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; move-object/from16 v0, p10 invoke-direct {v11, v0}, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor;->(Lorg/apache/http/client/AuthenticationHandler;)V new-instance v12, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; move-object/from16 v0, p11 invoke-direct {v12, v0}, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor;->(Lorg/apache/http/client/AuthenticationHandler;)V move-object v1, p0 move-object/from16 v3, p2 move-object/from16 v4, p3 move-object/from16 v5, p4 move-object/from16 v6, p5 move-object/from16 v7, p6 move-object/from16 v8, p7 move-object/from16 v9, p8 move-object/from16 v10, p9 move-object/from16 v13, p12 move-object/from16 v14, p13 invoke-direct/range {v1 .. v14}, Lorg/apache/http/impl/client/DefaultRequestDirector;->(Lorg/apache/commons/logging/Log;Lorg/apache/http/protocol/HttpRequestExecutor;Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/ConnectionReuseStrategy;Lorg/apache/http/conn/ConnectionKeepAliveStrategy;Lorg/apache/http/conn/routing/HttpRoutePlanner;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/client/HttpRequestRetryHandler;Lorg/apache/http/client/RedirectStrategy;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/client/UserTokenHandler;Lorg/apache/http/params/HttpParams;)V return-void .end method .method public constructor (Lorg/apache/commons/logging/Log;Lorg/apache/http/protocol/HttpRequestExecutor;Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/ConnectionReuseStrategy;Lorg/apache/http/conn/ConnectionKeepAliveStrategy;Lorg/apache/http/conn/routing/HttpRoutePlanner;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/client/HttpRequestRetryHandler;Lorg/apache/http/client/RedirectStrategy;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/client/UserTokenHandler;Lorg/apache/http/params/HttpParams;)V .registers 15 .line 267 invoke-direct {p0}, Ljava/lang/Object;->()V .line 269 const-string v0, "Log" invoke-static {p1, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 270 const-string v0, "Request executor" invoke-static {p2, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 271 const-string v0, "Client connection manager" invoke-static {p3, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 272 const-string v0, "Connection reuse strategy" invoke-static {p4, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 273 const-string v0, "Connection keep alive strategy" invoke-static {p5, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 274 const-string v0, "Route planner" invoke-static {p6, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 275 const-string v0, "HTTP protocol processor" invoke-static {p7, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 276 const-string v0, "HTTP request retry handler" invoke-static {p8, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 277 const-string v0, "Redirect strategy" invoke-static {p9, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 278 const-string v0, "Target authentication strategy" invoke-static {p10, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 279 const-string v0, "Proxy authentication strategy" invoke-static {p11, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 280 const-string v0, "User token handler" invoke-static {p12, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 281 const-string v0, "HTTP parameters" invoke-static {p13, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 282 iput-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; .line 283 new-instance v0, Lorg/apache/http/impl/client/HttpAuthenticator; invoke-direct {v0, p1}, Lorg/apache/http/impl/client/HttpAuthenticator;->(Lorg/apache/commons/logging/Log;)V iput-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; .line 284 iput-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; .line 285 iput-object p3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->connManager:Lorg/apache/http/conn/ClientConnectionManager; .line 286 iput-object p4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->reuseStrategy:Lorg/apache/http/ConnectionReuseStrategy; .line 287 iput-object p5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->keepAliveStrategy:Lorg/apache/http/conn/ConnectionKeepAliveStrategy; .line 288 iput-object p6, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->routePlanner:Lorg/apache/http/conn/routing/HttpRoutePlanner; .line 289 iput-object p7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->httpProcessor:Lorg/apache/http/protocol/HttpProcessor; .line 290 iput-object p8, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->retryHandler:Lorg/apache/http/client/HttpRequestRetryHandler; .line 291 iput-object p9, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectStrategy:Lorg/apache/http/client/RedirectStrategy; .line 292 iput-object p10, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; .line 293 iput-object p11, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; .line 294 iput-object p12, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->userTokenHandler:Lorg/apache/http/client/UserTokenHandler; .line 295 iput-object p13, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; .line 297 instance-of p1, p9, Lorg/apache/http/impl/client/DefaultRedirectStrategyAdaptor; const/4 p2, 0x0 if-eqz p1, :cond_73 .line 298 check-cast p9, Lorg/apache/http/impl/client/DefaultRedirectStrategyAdaptor; invoke-virtual {p9}, Lorg/apache/http/impl/client/DefaultRedirectStrategyAdaptor;->getHandler()Lorg/apache/http/client/RedirectHandler; move-result-object p1 iput-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectHandler:Lorg/apache/http/client/RedirectHandler; goto :goto_75 .line 300 :cond_73 iput-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectHandler:Lorg/apache/http/client/RedirectHandler; .line 302 :goto_75 instance-of p1, p10, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; if-eqz p1, :cond_82 .line 303 check-cast p10, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; invoke-virtual {p10}, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor;->getHandler()Lorg/apache/http/client/AuthenticationHandler; move-result-object p1 iput-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthHandler:Lorg/apache/http/client/AuthenticationHandler; goto :goto_84 .line 305 :cond_82 iput-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthHandler:Lorg/apache/http/client/AuthenticationHandler; .line 307 :goto_84 instance-of p1, p11, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; if-eqz p1, :cond_91 .line 308 check-cast p11, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; invoke-virtual {p11}, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor;->getHandler()Lorg/apache/http/client/AuthenticationHandler; move-result-object p1 iput-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthHandler:Lorg/apache/http/client/AuthenticationHandler; goto :goto_93 .line 310 :cond_91 iput-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthHandler:Lorg/apache/http/client/AuthenticationHandler; .line 313 :goto_93 iput-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; const/4 p1, 0x0 .line 315 iput p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->execCount:I .line 316 iput p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectCount:I .line 317 new-instance p1, Lorg/apache/http/auth/AuthState; invoke-direct {p1}, Lorg/apache/http/auth/AuthState;->()V iput-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; .line 318 new-instance p1, Lorg/apache/http/auth/AuthState; invoke-direct {p1}, Lorg/apache/http/auth/AuthState;->()V iput-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; .line 319 const-string p1, "http.protocol.max-redirects" const/16 p2, 0x64 invoke-interface {p13, p1, p2}, Lorg/apache/http/params/HttpParams;->getIntParameter(Ljava/lang/String;I)I move-result p1 iput p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->maxRedirects:I return-void .end method .method public constructor (Lorg/apache/http/protocol/HttpRequestExecutor;Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/ConnectionReuseStrategy;Lorg/apache/http/conn/ConnectionKeepAliveStrategy;Lorg/apache/http/conn/routing/HttpRoutePlanner;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/client/HttpRequestRetryHandler;Lorg/apache/http/client/RedirectHandler;Lorg/apache/http/client/AuthenticationHandler;Lorg/apache/http/client/AuthenticationHandler;Lorg/apache/http/client/UserTokenHandler;Lorg/apache/http/params/HttpParams;)V .registers 28 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 217 const-class v0, Lorg/apache/http/impl/client/DefaultRequestDirector; invoke-static {v0}, Lorg/apache/commons/logging/LogFactory;->getLog(Ljava/lang/Class;)Lorg/apache/commons/logging/Log; move-result-object v2 new-instance v10, Lorg/apache/http/impl/client/DefaultRedirectStrategyAdaptor; move-object/from16 v0, p8 invoke-direct {v10, v0}, Lorg/apache/http/impl/client/DefaultRedirectStrategyAdaptor;->(Lorg/apache/http/client/RedirectHandler;)V new-instance v11, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; move-object/from16 v0, p9 invoke-direct {v11, v0}, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor;->(Lorg/apache/http/client/AuthenticationHandler;)V new-instance v12, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor; move-object/from16 v0, p10 invoke-direct {v12, v0}, Lorg/apache/http/impl/client/AuthenticationStrategyAdaptor;->(Lorg/apache/http/client/AuthenticationHandler;)V move-object v1, p0 move-object/from16 v3, p1 move-object/from16 v4, p2 move-object/from16 v5, p3 move-object/from16 v6, p4 move-object/from16 v7, p5 move-object/from16 v8, p6 move-object/from16 v9, p7 move-object/from16 v13, p11 move-object/from16 v14, p12 invoke-direct/range {v1 .. v14}, Lorg/apache/http/impl/client/DefaultRequestDirector;->(Lorg/apache/commons/logging/Log;Lorg/apache/http/protocol/HttpRequestExecutor;Lorg/apache/http/conn/ClientConnectionManager;Lorg/apache/http/ConnectionReuseStrategy;Lorg/apache/http/conn/ConnectionKeepAliveStrategy;Lorg/apache/http/conn/routing/HttpRoutePlanner;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/client/HttpRequestRetryHandler;Lorg/apache/http/client/RedirectStrategy;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/client/UserTokenHandler;Lorg/apache/http/params/HttpParams;)V return-void .end method .method private abortConnection()V .registers 5 .line 1127 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; if-eqz v0, :cond_29 const/4 v1, 0x0 .line 1131 iput-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; .line 1133 :try_start_7 invoke-interface {v0}, Lorg/apache/http/conn/ManagedClientConnection;->abortConnection()V :try_end_a .catch Ljava/io/IOException; {:try_start_7 .. :try_end_a} :catch_b goto :goto_1d :catch_b move-exception v1 .line 1135 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v2}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result v2 if-eqz v2, :cond_1d .line 1136 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-virtual {v1}, Ljava/io/IOException;->getMessage()Ljava/lang/String; move-result-object v3 invoke-interface {v2, v3, v1}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;Ljava/lang/Throwable;)V .line 1141 :cond_1d :goto_1d :try_start_1d invoke-interface {v0}, Lorg/apache/http/conn/ManagedClientConnection;->releaseConnection()V :try_end_20 .catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_21 goto :goto_29 :catch_21 move-exception v0 .line 1143 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v2, "Error releasing connection" invoke-interface {v1, v2, v0}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;Ljava/lang/Throwable;)V :cond_29 :goto_29 return-void .end method .method private tryConnect(Lorg/apache/http/impl/client/RoutedRequest;Lorg/apache/http/protocol/HttpContext;)V .registers 9 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 600 invoke-virtual {p1}, Lorg/apache/http/impl/client/RoutedRequest;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object v0 .line 601 invoke-virtual {p1}, Lorg/apache/http/impl/client/RoutedRequest;->getRequest()Lorg/apache/http/impl/client/RequestWrapper; move-result-object p1 const/4 v1, 0x0 .line 605 :cond_9 :goto_9 const-string v2, "http.request" invoke-interface {p2, v2, p1}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V add-int/lit8 v1, v1, 0x1 .line 609 :try_start_10 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v2}, Lorg/apache/http/conn/ManagedClientConnection;->isOpen()Z move-result v2 if-nez v2, :cond_20 .line 610 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v2, v0, p2, v3}, Lorg/apache/http/conn/ManagedClientConnection;->open(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;Lorg/apache/http/params/HttpParams;)V goto :goto_2b .line 612 :cond_20 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-static {v3}, Lorg/apache/http/params/HttpConnectionParams;->getSoTimeout(Lorg/apache/http/params/HttpParams;)I move-result v3 invoke-interface {v2, v3}, Lorg/apache/http/conn/ManagedClientConnection;->setSocketTimeout(I)V .line 614 :goto_2b invoke-virtual {p0, v0, p2}, Lorg/apache/http/impl/client/DefaultRequestDirector;->establishRoute(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;)V :try_end_2e .catch Ljava/io/IOException; {:try_start_10 .. :try_end_2e} :catch_2f return-void :catch_2f move-exception v2 .line 618 :try_start_30 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v3}, Lorg/apache/http/conn/ManagedClientConnection;->close()V :try_end_35 .catch Ljava/io/IOException; {:try_start_30 .. :try_end_35} :catch_35 .line 621 :catch_35 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->retryHandler:Lorg/apache/http/client/HttpRequestRetryHandler; invoke-interface {v3, v2, v1, p2}, Lorg/apache/http/client/HttpRequestRetryHandler;->retryRequest(Ljava/io/IOException;ILorg/apache/http/protocol/HttpContext;)Z move-result v3 if-eqz v3, :cond_a0 .line 622 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v3}, Lorg/apache/commons/logging/Log;->isInfoEnabled()Z move-result v3 if-eqz v3, :cond_9 .line 623 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v4, Ljava/lang/StringBuilder; const-string v5, "I/O exception (" invoke-direct {v4, v5}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v5 invoke-virtual {v5}, Ljava/lang/Class;->getName()Ljava/lang/String; move-result-object v5 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 const-string v5, ") caught when connecting to " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v4 const-string v5, ": " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v2}, Ljava/io/IOException;->getMessage()Ljava/lang/String; move-result-object v5 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-interface {v3, v4}, Lorg/apache/commons/logging/Log;->info(Ljava/lang/Object;)V .line 628 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v3}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result v3 if-eqz v3, :cond_8a .line 629 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-virtual {v2}, Ljava/io/IOException;->getMessage()Ljava/lang/String; move-result-object v4 invoke-interface {v3, v4, v2}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;Ljava/lang/Throwable;)V .line 631 :cond_8a iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v3, Ljava/lang/StringBuilder; const-string v4, "Retrying connect to " invoke-direct {v3, v4}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-interface {v2, v3}, Lorg/apache/commons/logging/Log;->info(Ljava/lang/Object;)V goto/16 :goto_9 .line 634 :cond_a0 throw v2 .end method .method private tryExecute(Lorg/apache/http/impl/client/RoutedRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpResponse; .registers 9 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 645 invoke-virtual {p1}, Lorg/apache/http/impl/client/RoutedRequest;->getRequest()Lorg/apache/http/impl/client/RequestWrapper; move-result-object v0 .line 646 invoke-virtual {p1}, Lorg/apache/http/impl/client/RoutedRequest;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object p1 const/4 v1, 0x0 move-object v2, v1 .line 652 :cond_a :goto_a iget v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->execCount:I add-int/lit8 v3, v3, 0x1 iput v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->execCount:I .line 654 invoke-virtual {v0}, Lorg/apache/http/impl/client/RequestWrapper;->incrementExecCount()V .line 655 invoke-virtual {v0}, Lorg/apache/http/impl/client/RequestWrapper;->isRepeatable()Z move-result v3 if-nez v3, :cond_32 .line 656 iget-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string p2, "Cannot retry non-repeatable request" invoke-interface {p1, p2}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V if-eqz v2, :cond_2a .line 658 new-instance p1, Lorg/apache/http/client/NonRepeatableRequestException; const-string p2, "Cannot retry request with a non-repeatable request entity. The cause lists the reason the original request failed." invoke-direct {p1, p2, v2}, Lorg/apache/http/client/NonRepeatableRequestException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p1 .line 662 :cond_2a new-instance p1, Lorg/apache/http/client/NonRepeatableRequestException; const-string p2, "Cannot retry request with a non-repeatable request entity." invoke-direct {p1, p2}, Lorg/apache/http/client/NonRepeatableRequestException;->(Ljava/lang/String;)V throw p1 .line 668 :cond_32 :try_start_32 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v2}, Lorg/apache/http/conn/ManagedClientConnection;->isOpen()Z move-result v2 if-nez v2, :cond_57 .line 671 invoke-virtual {p1}, Lorg/apache/http/conn/routing/HttpRoute;->isTunnelled()Z move-result v2 if-nez v2, :cond_4f .line 672 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v3, "Reopening the direct connection." invoke-interface {v2, v3}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 673 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v2, p1, p2, v3}, Lorg/apache/http/conn/ManagedClientConnection;->open(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;Lorg/apache/http/params/HttpParams;)V goto :goto_57 .line 676 :cond_4f iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v3, "Proxied connection. Need to start over." invoke-interface {v2, v3}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V goto :goto_87 .line 681 :cond_57 :goto_57 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v2}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result v2 if-eqz v2, :cond_7f .line 682 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "Attempt " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 iget v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->execCount:I invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v3 const-string v4, " to execute request" invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-interface {v2, v3}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 684 :cond_7f iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-virtual {v2, v0, v3, p2}, Lorg/apache/http/protocol/HttpRequestExecutor;->execute(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpClientConnection;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpResponse; move-result-object v1 :try_end_87 .catch Ljava/io/IOException; {:try_start_32 .. :try_end_87} :catch_88 :goto_87 return-object v1 :catch_88 move-exception v2 .line 688 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v4, "Closing the connection." invoke-interface {v3, v4}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 690 :try_start_90 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v3}, Lorg/apache/http/conn/ManagedClientConnection;->close()V :try_end_95 .catch Ljava/io/IOException; {:try_start_90 .. :try_end_95} :catch_95 .line 693 :catch_95 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->retryHandler:Lorg/apache/http/client/HttpRequestRetryHandler; invoke-virtual {v0}, Lorg/apache/http/impl/client/RequestWrapper;->getExecCount()I move-result v4 invoke-interface {v3, v2, v4, p2}, Lorg/apache/http/client/HttpRequestRetryHandler;->retryRequest(Ljava/io/IOException;ILorg/apache/http/protocol/HttpContext;)Z move-result v3 if-eqz v3, :cond_10c .line 694 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v3}, Lorg/apache/commons/logging/Log;->isInfoEnabled()Z move-result v3 if-eqz v3, :cond_dd .line 695 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v4, Ljava/lang/StringBuilder; const-string v5, "I/O exception (" invoke-direct {v4, v5}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v5 invoke-virtual {v5}, Ljava/lang/Class;->getName()Ljava/lang/String; move-result-object v5 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 const-string v5, ") caught when processing request to " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v4 const-string v5, ": " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v2}, Ljava/io/IOException;->getMessage()Ljava/lang/String; move-result-object v5 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-interface {v3, v4}, Lorg/apache/commons/logging/Log;->info(Ljava/lang/Object;)V .line 701 :cond_dd iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v3}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result v3 if-eqz v3, :cond_ee .line 702 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-virtual {v2}, Ljava/io/IOException;->getMessage()Ljava/lang/String; move-result-object v4 invoke-interface {v3, v4, v2}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;Ljava/lang/Throwable;)V .line 704 :cond_ee iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v3}, Lorg/apache/commons/logging/Log;->isInfoEnabled()Z move-result v3 if-eqz v3, :cond_a .line 705 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v4, Ljava/lang/StringBuilder; const-string v5, "Retrying request to " invoke-direct {v4, v5}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-interface {v3, v4}, Lorg/apache/commons/logging/Log;->info(Ljava/lang/Object;)V goto/16 :goto_a .line 709 :cond_10c instance-of p2, v2, Lorg/apache/http/NoHttpResponseException; if-eqz p2, :cond_138 .line 710 new-instance p2, Lorg/apache/http/NoHttpResponseException; new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V invoke-virtual {p1}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object p1 invoke-virtual {p1}, Lorg/apache/http/HttpHost;->toHostString()Ljava/lang/String; move-result-object p1 invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 const-string v0, " failed to respond" invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Lorg/apache/http/NoHttpResponseException;->(Ljava/lang/String;)V .line 712 invoke-virtual {v2}, Ljava/io/IOException;->getStackTrace()[Ljava/lang/StackTraceElement; move-result-object p1 invoke-virtual {p2, p1}, Lorg/apache/http/NoHttpResponseException;->setStackTrace([Ljava/lang/StackTraceElement;)V .line 713 throw p2 .line 715 :cond_138 throw v2 .end method .method private wrapRequest(Lorg/apache/http/HttpRequest;)Lorg/apache/http/impl/client/RequestWrapper; .registers 3 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/ProtocolException; } .end annotation .line 325 instance-of v0, p1, Lorg/apache/http/HttpEntityEnclosingRequest; if-eqz v0, :cond_c .line 326 new-instance v0, Lorg/apache/http/impl/client/EntityEnclosingRequestWrapper; check-cast p1, Lorg/apache/http/HttpEntityEnclosingRequest; invoke-direct {v0, p1}, Lorg/apache/http/impl/client/EntityEnclosingRequestWrapper;->(Lorg/apache/http/HttpEntityEnclosingRequest;)V return-object v0 .line 329 :cond_c new-instance v0, Lorg/apache/http/impl/client/RequestWrapper; invoke-direct {v0, p1}, Lorg/apache/http/impl/client/RequestWrapper;->(Lorg/apache/http/HttpRequest;)V return-object v0 .end method # virtual methods .method protected createConnectRequest(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpRequest; .registers 5 .line 987 invoke-virtual {p1}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object p1 .line 989 invoke-virtual {p1}, Lorg/apache/http/HttpHost;->getHostName()Ljava/lang/String; move-result-object p2 .line 990 invoke-virtual {p1}, Lorg/apache/http/HttpHost;->getPort()I move-result v0 if-gez v0, :cond_20 .line 992 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->connManager:Lorg/apache/http/conn/ClientConnectionManager; invoke-interface {v0}, Lorg/apache/http/conn/ClientConnectionManager;->getSchemeRegistry()Lorg/apache/http/conn/scheme/SchemeRegistry; move-result-object v0 invoke-virtual {p1}, Lorg/apache/http/HttpHost;->getSchemeName()Ljava/lang/String; move-result-object p1 invoke-virtual {v0, p1}, Lorg/apache/http/conn/scheme/SchemeRegistry;->getScheme(Ljava/lang/String;)Lorg/apache/http/conn/scheme/Scheme; move-result-object p1 .line 994 invoke-virtual {p1}, Lorg/apache/http/conn/scheme/Scheme;->getDefaultPort()I move-result v0 .line 997 :cond_20 new-instance p1, Ljava/lang/StringBuilder; invoke-virtual {p2}, Ljava/lang/String;->length()I move-result v1 add-int/lit8 v1, v1, 0x6 invoke-direct {p1, v1}, Ljava/lang/StringBuilder;->(I)V .line 998 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const/16 p2, 0x3a .line 999 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; .line 1000 invoke-static {v0}, Ljava/lang/Integer;->toString(I)Ljava/lang/String; move-result-object p2 invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 1002 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 .line 1003 iget-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-static {p2}, Lorg/apache/http/params/HttpProtocolParams;->getVersion(Lorg/apache/http/params/HttpParams;)Lorg/apache/http/ProtocolVersion; move-result-object p2 .line 1004 new-instance v0, Lorg/apache/http/message/BasicHttpRequest; const-string v1, "CONNECT" invoke-direct {v0, v1, p1, p2}, Lorg/apache/http/message/BasicHttpRequest;->(Ljava/lang/String;Ljava/lang/String;Lorg/apache/http/ProtocolVersion;)V return-object v0 .end method .method protected createTunnelToProxy(Lorg/apache/http/conn/routing/HttpRoute;ILorg/apache/http/protocol/HttpContext;)Z .registers 4 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 967 new-instance p1, Lorg/apache/http/HttpException; const-string p2, "Proxy chains are not supported." invoke-direct {p1, p2}, Lorg/apache/http/HttpException;->(Ljava/lang/String;)V throw p1 .end method .method protected createTunnelToTarget(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;)Z .registers 12 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 855 invoke-virtual {p1}, Lorg/apache/http/conn/routing/HttpRoute;->getProxyHost()Lorg/apache/http/HttpHost; move-result-object v6 .line 856 invoke-virtual {p1}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object v7 .line 860 :cond_8 :goto_8 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v0}, Lorg/apache/http/conn/ManagedClientConnection;->isOpen()Z move-result v0 if-nez v0, :cond_17 .line 861 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v0, p1, p2, v1}, Lorg/apache/http/conn/ManagedClientConnection;->open(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;Lorg/apache/http/params/HttpParams;)V .line 864 :cond_17 invoke-virtual {p0, p1, p2}, Lorg/apache/http/impl/client/DefaultRequestDirector;->createConnectRequest(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpRequest; move-result-object v0 .line 865 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v0, v1}, Lorg/apache/http/HttpRequest;->setParams(Lorg/apache/http/params/HttpParams;)V .line 868 const-string v1, "http.target_host" invoke-interface {p2, v1, v7}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 869 const-string v1, "http.route" invoke-interface {p2, v1, p1}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 870 const-string v1, "http.proxy_host" invoke-interface {p2, v1, v6}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 871 const-string v1, "http.connection" iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {p2, v1, v2}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 872 const-string v1, "http.request" invoke-interface {p2, v1, v0}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 874 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->httpProcessor:Lorg/apache/http/protocol/HttpProcessor; invoke-virtual {v1, v0, v2, p2}, Lorg/apache/http/protocol/HttpRequestExecutor;->preProcess(Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/protocol/HttpContext;)V .line 876 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-virtual {v1, v0, v2, p2}, Lorg/apache/http/protocol/HttpRequestExecutor;->execute(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpClientConnection;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpResponse; move-result-object v8 .line 878 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v8, v0}, Lorg/apache/http/HttpResponse;->setParams(Lorg/apache/http/params/HttpParams;)V .line 879 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->httpProcessor:Lorg/apache/http/protocol/HttpProcessor; invoke-virtual {v0, v8, v1, p2}, Lorg/apache/http/protocol/HttpRequestExecutor;->postProcess(Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/protocol/HttpContext;)V .line 881 invoke-interface {v8}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; move-result-object v0 invoke-interface {v0}, Lorg/apache/http/StatusLine;->getStatusCode()I move-result v0 const/16 v1, 0xc8 if-lt v0, v1, :cond_e6 .line 887 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-static {v0}, Lorg/apache/http/client/params/HttpClientParams;->isAuthenticating(Lorg/apache/http/params/HttpParams;)Z move-result v0 if-eqz v0, :cond_8 .line 888 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; iget-object v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; move-object v1, v6 move-object v2, v8 move-object v5, p2 invoke-virtual/range {v0 .. v5}, Lorg/apache/http/impl/client/HttpAuthenticator;->isAuthenticationRequested(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z move-result v0 if-eqz v0, :cond_a7 .line 890 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; iget-object v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; move-object v1, v6 move-object v2, v8 move-object v5, p2 invoke-virtual/range {v0 .. v5}, Lorg/apache/http/impl/client/HttpAuthenticator;->authenticate(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z move-result v0 if-eqz v0, :cond_a7 .line 893 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->reuseStrategy:Lorg/apache/http/ConnectionReuseStrategy; invoke-interface {v0, v8, p2}, Lorg/apache/http/ConnectionReuseStrategy;->keepAlive(Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Z move-result v0 if-eqz v0, :cond_a0 .line 894 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v1, "Connection kept alive" invoke-interface {v0, v1}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 896 invoke-interface {v8}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; move-result-object v0 .line 897 invoke-static {v0}, Lorg/apache/http/util/EntityUtils;->consume(Lorg/apache/http/HttpEntity;)V goto/16 :goto_8 .line 899 :cond_a0 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v0}, Lorg/apache/http/conn/ManagedClientConnection;->close()V goto/16 :goto_8 .line 910 :cond_a7 invoke-interface {v8}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; move-result-object p1 invoke-interface {p1}, Lorg/apache/http/StatusLine;->getStatusCode()I move-result p1 const/16 p2, 0x12b if-le p1, p2, :cond_df .line 915 invoke-interface {v8}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; move-result-object p1 if-eqz p1, :cond_c1 .line 917 new-instance p2, Lorg/apache/http/entity/BufferedHttpEntity; invoke-direct {p2, p1}, Lorg/apache/http/entity/BufferedHttpEntity;->(Lorg/apache/http/HttpEntity;)V invoke-interface {v8, p2}, Lorg/apache/http/HttpResponse;->setEntity(Lorg/apache/http/HttpEntity;)V .line 920 :cond_c1 iget-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {p1}, Lorg/apache/http/conn/ManagedClientConnection;->close()V .line 921 new-instance p1, Lorg/apache/http/impl/client/TunnelRefusedException; new-instance p2, Ljava/lang/StringBuilder; const-string v0, "CONNECT refused by proxy: " invoke-direct {p2, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-interface {v8}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; move-result-object v0 invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2, v8}, Lorg/apache/http/impl/client/TunnelRefusedException;->(Ljava/lang/String;Lorg/apache/http/HttpResponse;)V throw p1 .line 925 :cond_df iget-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {p1}, Lorg/apache/http/conn/ManagedClientConnection;->markReusable()V const/4 p1, 0x0 return p1 .line 883 :cond_e6 new-instance p1, Lorg/apache/http/HttpException; new-instance p2, Ljava/lang/StringBuilder; const-string v0, "Unexpected response to CONNECT request: " invoke-direct {p2, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-interface {v8}, Lorg/apache/http/HttpResponse;->getStatusLine()Lorg/apache/http/StatusLine; move-result-object v0 invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Lorg/apache/http/HttpException;->(Ljava/lang/String;)V throw p1 .end method .method protected determineRoute(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/conn/routing/HttpRoute; .registers 6 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException; } .end annotation .line 761 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->routePlanner:Lorg/apache/http/conn/routing/HttpRoutePlanner; if-eqz p1, :cond_5 goto :goto_11 :cond_5 invoke-interface {p2}, Lorg/apache/http/HttpRequest;->getParams()Lorg/apache/http/params/HttpParams; move-result-object p1 const-string v1, "http.default-host" invoke-interface {p1, v1}, Lorg/apache/http/params/HttpParams;->getParameter(Ljava/lang/String;)Ljava/lang/Object; move-result-object p1 check-cast p1, Lorg/apache/http/HttpHost; :goto_11 invoke-interface {v0, p1, p2, p3}, Lorg/apache/http/conn/routing/HttpRoutePlanner;->determineRoute(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/conn/routing/HttpRoute; move-result-object p1 return-object p1 .end method .method protected establishRoute(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;)V .registers 9 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 780 new-instance v0, Lorg/apache/http/conn/routing/BasicRouteDirector; invoke-direct {v0}, Lorg/apache/http/conn/routing/BasicRouteDirector;->()V .line 783 :cond_5 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v1}, Lorg/apache/http/conn/ManagedClientConnection;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object v1 .line 784 invoke-interface {v0, p1, v1}, Lorg/apache/http/conn/routing/HttpRouteDirector;->nextStep(Lorg/apache/http/conn/routing/RouteInfo;Lorg/apache/http/conn/routing/RouteInfo;)I move-result v2 packed-switch v2, :pswitch_data_8e .line 823 new-instance p1, Ljava/lang/IllegalStateException; new-instance p2, Ljava/lang/StringBuilder; const-string v0, "Unknown step indicator " invoke-direct {p2, v0}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p2, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object p2 const-string v0, " from RouteDirector." invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p2 invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw p1 .line 813 :pswitch_2d iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v1, p2, v3}, Lorg/apache/http/conn/ManagedClientConnection;->layerProtocol(Lorg/apache/http/protocol/HttpContext;Lorg/apache/http/params/HttpParams;)V goto :goto_6c .line 804 :pswitch_35 invoke-virtual {v1}, Lorg/apache/http/conn/routing/HttpRoute;->getHopCount()I move-result v1 add-int/lit8 v1, v1, -0x1 .line 805 invoke-virtual {p0, p1, v1, p2}, Lorg/apache/http/impl/client/DefaultRequestDirector;->createTunnelToProxy(Lorg/apache/http/conn/routing/HttpRoute;ILorg/apache/http/protocol/HttpContext;)Z move-result v3 .line 806 iget-object v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v5, "Tunnel to proxy created." invoke-interface {v4, v5}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 807 iget-object v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-virtual {p1, v1}, Lorg/apache/http/conn/routing/HttpRoute;->getHopTarget(I)Lorg/apache/http/HttpHost; move-result-object v1 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v4, v1, v3, v5}, Lorg/apache/http/conn/ManagedClientConnection;->tunnelProxy(Lorg/apache/http/HttpHost;ZLorg/apache/http/params/HttpParams;)V goto :goto_6c .line 794 :pswitch_52 invoke-virtual {p0, p1, p2}, Lorg/apache/http/impl/client/DefaultRequestDirector;->createTunnelToTarget(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;)Z move-result v1 .line 795 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v4, "Tunnel to target created." invoke-interface {v3, v4}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 796 iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v3, v1, v4}, Lorg/apache/http/conn/ManagedClientConnection;->tunnelTarget(ZLorg/apache/http/params/HttpParams;)V goto :goto_6c .line 790 :pswitch_65 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; iget-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v1, p1, p2, v3}, Lorg/apache/http/conn/ManagedClientConnection;->open(Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/protocol/HttpContext;Lorg/apache/http/params/HttpParams;)V :goto_6c :pswitch_6c if-gtz v2, :cond_5 return-void .line 817 :pswitch_6f new-instance p2, Lorg/apache/http/HttpException; new-instance v0, Ljava/lang/StringBuilder; const-string v2, "Unable to establish route: planned = " invoke-direct {v0, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p1 const-string v0, "; current = " invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Lorg/apache/http/HttpException;->(Ljava/lang/String;)V throw p2 :pswitch_data_8e .packed-switch -0x1 :pswitch_6f :pswitch_6c :pswitch_65 :pswitch_65 :pswitch_52 :pswitch_35 :pswitch_2d .end packed-switch .end method .method public execute(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpResponse; .registers 16 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 372 const-string v0, "http.user-token" const-string v1, "http.auth.target-scope" iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; invoke-interface {p3, v1, v2}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 373 const-string v1, "http.auth.proxy-scope" iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-interface {p3, v1, v2}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 378 invoke-direct {p0, p2}, Lorg/apache/http/impl/client/DefaultRequestDirector;->wrapRequest(Lorg/apache/http/HttpRequest;)Lorg/apache/http/impl/client/RequestWrapper; move-result-object v1 .line 379 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-virtual {v1, v2}, Lorg/apache/http/impl/client/RequestWrapper;->setParams(Lorg/apache/http/params/HttpParams;)V .line 380 invoke-virtual {p0, p1, v1, p3}, Lorg/apache/http/impl/client/DefaultRequestDirector;->determineRoute(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/conn/routing/HttpRoute; move-result-object v2 .line 382 invoke-virtual {v1}, Lorg/apache/http/impl/client/RequestWrapper;->getParams()Lorg/apache/http/params/HttpParams; move-result-object v3 const-string v4, "http.virtual-host" invoke-interface {v3, v4}, Lorg/apache/http/params/HttpParams;->getParameter(Ljava/lang/String;)Ljava/lang/Object; move-result-object v3 check-cast v3, Lorg/apache/http/HttpHost; iput-object v3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->virtualHost:Lorg/apache/http/HttpHost; if-eqz v3, :cond_55 .line 385 invoke-virtual {v3}, Lorg/apache/http/HttpHost;->getPort()I move-result v3 const/4 v4, -0x1 if-ne v3, v4, :cond_55 if-eqz p1, :cond_38 move-object v3, p1 goto :goto_3c .line 386 :cond_38 invoke-virtual {v2}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object v3 .line 387 :goto_3c invoke-virtual {v3}, Lorg/apache/http/HttpHost;->getPort()I move-result v3 if-eq v3, v4, :cond_55 .line 389 new-instance v4, Lorg/apache/http/HttpHost; iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->virtualHost:Lorg/apache/http/HttpHost; invoke-virtual {v5}, Lorg/apache/http/HttpHost;->getHostName()Ljava/lang/String; move-result-object v5 iget-object v6, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->virtualHost:Lorg/apache/http/HttpHost; invoke-virtual {v6}, Lorg/apache/http/HttpHost;->getSchemeName()Ljava/lang/String; move-result-object v6 invoke-direct {v4, v5, v3, v6}, Lorg/apache/http/HttpHost;->(Ljava/lang/String;ILjava/lang/String;)V iput-object v4, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->virtualHost:Lorg/apache/http/HttpHost; .line 393 :cond_55 new-instance v3, Lorg/apache/http/impl/client/RoutedRequest; invoke-direct {v3, v1, v2}, Lorg/apache/http/impl/client/RoutedRequest;->(Lorg/apache/http/impl/client/RequestWrapper;Lorg/apache/http/conn/routing/HttpRoute;)V const/4 v1, 0x0 const/4 v2, 0x0 move-object v4, v3 move-object v3, v2 move v2, v1 :cond_5f :goto_5f if-nez v1, :cond_25b .line 405 :try_start_61 invoke-virtual {v4}, Lorg/apache/http/impl/client/RoutedRequest;->getRequest()Lorg/apache/http/impl/client/RequestWrapper; move-result-object v3 .line 406 invoke-virtual {v4}, Lorg/apache/http/impl/client/RoutedRequest;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object v5 .line 410 invoke-interface {p3, v0}, Lorg/apache/http/protocol/HttpContext;->getAttribute(Ljava/lang/String;)Ljava/lang/Object; move-result-object v6 .line 413 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; if-nez v7, :cond_c8 .line 414 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->connManager:Lorg/apache/http/conn/ClientConnectionManager; invoke-interface {v7, v5, v6}, Lorg/apache/http/conn/ClientConnectionManager;->requestConnection(Lorg/apache/http/conn/routing/HttpRoute;Ljava/lang/Object;)Lorg/apache/http/conn/ClientConnectionRequest; move-result-object v7 .line 416 instance-of v8, p2, Lorg/apache/http/client/methods/AbortableHttpRequest; if-eqz v8, :cond_81 .line 417 move-object v8, p2 check-cast v8, Lorg/apache/http/client/methods/AbortableHttpRequest; invoke-interface {v8, v7}, Lorg/apache/http/client/methods/AbortableHttpRequest;->setConnectionRequest(Lorg/apache/http/conn/ClientConnectionRequest;)V .line 420 :cond_81 iget-object v8, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-static {v8}, Lorg/apache/http/client/params/HttpClientParams;->getConnectionManagerTimeout(Lorg/apache/http/params/HttpParams;)J move-result-wide v8 :try_end_87 .catch Lorg/apache/http/impl/conn/ConnectionShutdownException; {:try_start_61 .. :try_end_87} :catch_259 .catch Lorg/apache/http/HttpException; {:try_start_61 .. :try_end_87} :catch_257 .catch Ljava/io/IOException; {:try_start_61 .. :try_end_87} :catch_255 .catch Ljava/lang/RuntimeException; {:try_start_61 .. :try_end_87} :catch_253 .line 422 :try_start_87 sget-object v10, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit; invoke-interface {v7, v8, v9, v10}, Lorg/apache/http/conn/ClientConnectionRequest;->getConnection(JLjava/util/concurrent/TimeUnit;)Lorg/apache/http/conn/ManagedClientConnection; move-result-object v7 iput-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; :try_end_8f .catch Ljava/lang/InterruptedException; {:try_start_87 .. :try_end_8f} :catch_bb .catch Lorg/apache/http/impl/conn/ConnectionShutdownException; {:try_start_87 .. :try_end_8f} :catch_259 .catch Lorg/apache/http/HttpException; {:try_start_87 .. :try_end_8f} :catch_257 .catch Ljava/io/IOException; {:try_start_87 .. :try_end_8f} :catch_255 .catch Ljava/lang/RuntimeException; {:try_start_87 .. :try_end_8f} :catch_253 .line 428 :try_start_8f iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-static {v7}, Lorg/apache/http/params/HttpConnectionParams;->isStaleCheckingEnabled(Lorg/apache/http/params/HttpParams;)Z move-result v7 if-eqz v7, :cond_c8 .line 430 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v7}, Lorg/apache/http/conn/ManagedClientConnection;->isOpen()Z move-result v7 if-eqz v7, :cond_c8 .line 431 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v8, "Stale connection check" invoke-interface {v7, v8}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 432 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v7}, Lorg/apache/http/conn/ManagedClientConnection;->isStale()Z move-result v7 if-eqz v7, :cond_c8 .line 433 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v8, "Stale connection detected" invoke-interface {v7, v8}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 434 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v7}, Lorg/apache/http/conn/ManagedClientConnection;->close()V goto :goto_c8 .line 424 :catch_bb invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread; move-result-object p1 invoke-virtual {p1}, Ljava/lang/Thread;->interrupt()V .line 425 new-instance p1, Ljava/io/InterruptedIOException; invoke-direct {p1}, Ljava/io/InterruptedIOException;->()V throw p1 .line 440 :cond_c8 :goto_c8 instance-of v7, p2, Lorg/apache/http/client/methods/AbortableHttpRequest; if-eqz v7, :cond_d4 .line 441 move-object v7, p2 check-cast v7, Lorg/apache/http/client/methods/AbortableHttpRequest; iget-object v8, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v7, v8}, Lorg/apache/http/client/methods/AbortableHttpRequest;->setReleaseTrigger(Lorg/apache/http/conn/ConnectionReleaseTrigger;)V :try_end_d4 .catch Lorg/apache/http/impl/conn/ConnectionShutdownException; {:try_start_8f .. :try_end_d4} :catch_259 .catch Lorg/apache/http/HttpException; {:try_start_8f .. :try_end_d4} :catch_257 .catch Ljava/io/IOException; {:try_start_8f .. :try_end_d4} :catch_255 .catch Ljava/lang/RuntimeException; {:try_start_8f .. :try_end_d4} :catch_253 .line 445 :cond_d4 :try_start_d4 invoke-direct {p0, v4, p3}, Lorg/apache/http/impl/client/DefaultRequestDirector;->tryConnect(Lorg/apache/http/impl/client/RoutedRequest;Lorg/apache/http/protocol/HttpContext;)V :try_end_d7 .catch Lorg/apache/http/impl/client/TunnelRefusedException; {:try_start_d4 .. :try_end_d7} :catch_23c .catch Lorg/apache/http/impl/conn/ConnectionShutdownException; {:try_start_d4 .. :try_end_d7} :catch_259 .catch Lorg/apache/http/HttpException; {:try_start_d4 .. :try_end_d7} :catch_257 .catch Ljava/io/IOException; {:try_start_d4 .. :try_end_d7} :catch_255 .catch Ljava/lang/RuntimeException; {:try_start_d4 .. :try_end_d7} :catch_253 .line 454 :try_start_d7 invoke-virtual {v3}, Lorg/apache/http/impl/client/RequestWrapper;->getURI()Ljava/net/URI; move-result-object v7 invoke-virtual {v7}, Ljava/net/URI;->getUserInfo()Ljava/lang/String; move-result-object v7 if-eqz v7, :cond_f0 .line 456 iget-object v8, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; new-instance v9, Lorg/apache/http/impl/auth/BasicScheme; invoke-direct {v9}, Lorg/apache/http/impl/auth/BasicScheme;->()V new-instance v10, Lorg/apache/http/auth/UsernamePasswordCredentials; invoke-direct {v10, v7}, Lorg/apache/http/auth/UsernamePasswordCredentials;->(Ljava/lang/String;)V invoke-virtual {v8, v9, v10}, Lorg/apache/http/auth/AuthState;->update(Lorg/apache/http/auth/AuthScheme;Lorg/apache/http/auth/Credentials;)V .line 461 :cond_f0 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->virtualHost:Lorg/apache/http/HttpHost; if-eqz v7, :cond_f6 move-object p1, v7 goto :goto_104 .line 464 :cond_f6 invoke-virtual {v3}, Lorg/apache/http/impl/client/RequestWrapper;->getURI()Ljava/net/URI; move-result-object v7 .line 465 invoke-virtual {v7}, Ljava/net/URI;->isAbsolute()Z move-result v8 if-eqz v8, :cond_104 .line 466 invoke-static {v7}, Lorg/apache/http/client/utils/URIUtils;->extractHost(Ljava/net/URI;)Lorg/apache/http/HttpHost; move-result-object p1 :cond_104 :goto_104 if-nez p1, :cond_10a .line 470 invoke-virtual {v5}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object p1 .line 474 :cond_10a invoke-virtual {v3}, Lorg/apache/http/impl/client/RequestWrapper;->resetHeaders()V .line 476 invoke-virtual {p0, v3, v5}, Lorg/apache/http/impl/client/DefaultRequestDirector;->rewriteRequestURI(Lorg/apache/http/impl/client/RequestWrapper;Lorg/apache/http/conn/routing/HttpRoute;)V .line 479 const-string v7, "http.target_host" invoke-interface {p3, v7, p1}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 480 const-string v7, "http.route" invoke-interface {p3, v7, v5}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 481 const-string v5, "http.connection" iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {p3, v5, v7}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V .line 484 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->httpProcessor:Lorg/apache/http/protocol/HttpProcessor; invoke-virtual {v5, v3, v7, p3}, Lorg/apache/http/protocol/HttpRequestExecutor;->preProcess(Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/protocol/HttpContext;)V .line 486 invoke-direct {p0, v4, p3}, Lorg/apache/http/impl/client/DefaultRequestDirector;->tryExecute(Lorg/apache/http/impl/client/RoutedRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpResponse; move-result-object v3 if-nez v3, :cond_130 goto/16 :goto_5f .line 493 :cond_130 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->params:Lorg/apache/http/params/HttpParams; invoke-interface {v3, v2}, Lorg/apache/http/HttpResponse;->setParams(Lorg/apache/http/params/HttpParams;)V .line 494 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->requestExec:Lorg/apache/http/protocol/HttpRequestExecutor; iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->httpProcessor:Lorg/apache/http/protocol/HttpProcessor; invoke-virtual {v2, v3, v5, p3}, Lorg/apache/http/protocol/HttpRequestExecutor;->postProcess(Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/protocol/HttpContext;)V .line 498 iget-object v2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->reuseStrategy:Lorg/apache/http/ConnectionReuseStrategy; invoke-interface {v2, v3, p3}, Lorg/apache/http/ConnectionReuseStrategy;->keepAlive(Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Z move-result v2 if-eqz v2, :cond_199 .line 501 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->keepAliveStrategy:Lorg/apache/http/conn/ConnectionKeepAliveStrategy; invoke-interface {v5, v3, p3}, Lorg/apache/http/conn/ConnectionKeepAliveStrategy;->getKeepAliveDuration(Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)J move-result-wide v7 .line 502 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v5}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result v5 if-eqz v5, :cond_192 const-wide/16 v9, 0x0 cmp-long v5, v7, v9 if-lez v5, :cond_178 .line 505 new-instance v5, Ljava/lang/StringBuilder; invoke-direct {v5}, Ljava/lang/StringBuilder;->()V const-string v9, "for " invoke-virtual {v5, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v5 invoke-virtual {v5, v7, v8}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; move-result-object v5 const-string v9, " " invoke-virtual {v5, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v5 sget-object v9, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit; invoke-virtual {v5, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v5 invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v5 goto :goto_17a .line 507 :cond_178 const-string v5, "indefinitely" .line 509 :goto_17a iget-object v9, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "Connection can be kept alive " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v5 invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v5 invoke-interface {v9, v5}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 511 :cond_192 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; sget-object v9, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit; invoke-interface {v5, v7, v8, v9}, Lorg/apache/http/conn/ManagedClientConnection;->setIdleDuration(JLjava/util/concurrent/TimeUnit;)V .line 514 :cond_199 invoke-virtual {p0, v4, v3, p3}, Lorg/apache/http/impl/client/DefaultRequestDirector;->handleResponse(Lorg/apache/http/impl/client/RoutedRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/impl/client/RoutedRequest; move-result-object v5 if-nez v5, :cond_1a2 const/4 v1, 0x1 goto/16 :goto_224 :cond_1a2 if-eqz v2, :cond_1b1 .line 520 invoke-interface {v3}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; move-result-object v7 .line 521 invoke-static {v7}, Lorg/apache/http/util/EntityUtils;->consume(Lorg/apache/http/HttpEntity;)V .line 524 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v7}, Lorg/apache/http/conn/ManagedClientConnection;->markReusable()V goto :goto_212 .line 526 :cond_1b1 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v7}, Lorg/apache/http/conn/ManagedClientConnection;->close()V .line 527 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->getState()Lorg/apache/http/auth/AuthProtocolState; move-result-object v7 sget-object v8, Lorg/apache/http/auth/AuthProtocolState;->CHALLENGED:Lorg/apache/http/auth/AuthProtocolState; invoke-virtual {v7, v8}, Lorg/apache/http/auth/AuthProtocolState;->compareTo(Ljava/lang/Enum;)I move-result v7 if-lez v7, :cond_1e4 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->getAuthScheme()Lorg/apache/http/auth/AuthScheme; move-result-object v7 if-eqz v7, :cond_1e4 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->getAuthScheme()Lorg/apache/http/auth/AuthScheme; move-result-object v7 invoke-interface {v7}, Lorg/apache/http/auth/AuthScheme;->isConnectionBased()Z move-result v7 if-eqz v7, :cond_1e4 .line 530 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v8, "Resetting proxy auth state" invoke-interface {v7, v8}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 531 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->reset()V .line 533 :cond_1e4 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->getState()Lorg/apache/http/auth/AuthProtocolState; move-result-object v7 sget-object v8, Lorg/apache/http/auth/AuthProtocolState;->CHALLENGED:Lorg/apache/http/auth/AuthProtocolState; invoke-virtual {v7, v8}, Lorg/apache/http/auth/AuthProtocolState;->compareTo(Ljava/lang/Enum;)I move-result v7 if-lez v7, :cond_212 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->getAuthScheme()Lorg/apache/http/auth/AuthScheme; move-result-object v7 if-eqz v7, :cond_212 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->getAuthScheme()Lorg/apache/http/auth/AuthScheme; move-result-object v7 invoke-interface {v7}, Lorg/apache/http/auth/AuthScheme;->isConnectionBased()Z move-result v7 if-eqz v7, :cond_212 .line 536 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v8, "Resetting target auth state" invoke-interface {v7, v8}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 537 iget-object v7, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v7}, Lorg/apache/http/auth/AuthState;->reset()V .line 541 :cond_212 :goto_212 invoke-virtual {v5}, Lorg/apache/http/impl/client/RoutedRequest;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object v7 invoke-virtual {v4}, Lorg/apache/http/impl/client/RoutedRequest;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object v4 invoke-virtual {v7, v4}, Lorg/apache/http/conn/routing/HttpRoute;->equals(Ljava/lang/Object;)Z move-result v4 if-nez v4, :cond_223 .line 542 invoke-virtual {p0}, Lorg/apache/http/impl/client/DefaultRequestDirector;->releaseConnection()V :cond_223 move-object v4, v5 .line 547 :goto_224 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; if-eqz v5, :cond_5f if-nez v6, :cond_233 .line 549 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->userTokenHandler:Lorg/apache/http/client/UserTokenHandler; invoke-interface {v5, p3}, Lorg/apache/http/client/UserTokenHandler;->getUserToken(Lorg/apache/http/protocol/HttpContext;)Ljava/lang/Object; move-result-object v6 .line 550 invoke-interface {p3, v0, v6}, Lorg/apache/http/protocol/HttpContext;->setAttribute(Ljava/lang/String;Ljava/lang/Object;)V :cond_233 if-eqz v6, :cond_5f .line 553 iget-object v5, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v5, v6}, Lorg/apache/http/conn/ManagedClientConnection;->setState(Ljava/lang/Object;)V goto/16 :goto_5f :catch_23c move-exception p1 .line 447 iget-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {p2}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result p2 if-eqz p2, :cond_24e .line 448 iget-object p2, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-virtual {p1}, Lorg/apache/http/impl/client/TunnelRefusedException;->getMessage()Ljava/lang/String; move-result-object p3 invoke-interface {p2, p3}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 450 :cond_24e invoke-virtual {p1}, Lorg/apache/http/impl/client/TunnelRefusedException;->getResponse()Lorg/apache/http/HttpResponse; move-result-object v3 goto :goto_25b :catch_253 move-exception p1 goto :goto_288 :catch_255 move-exception p1 goto :goto_28c :catch_257 move-exception p1 goto :goto_290 :catch_259 move-exception p1 goto :goto_294 :cond_25b :goto_25b if-eqz v3, :cond_27d .line 561 invoke-interface {v3}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; move-result-object p1 if-eqz p1, :cond_27d invoke-interface {v3}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; move-result-object p1 invoke-interface {p1}, Lorg/apache/http/HttpEntity;->isStreaming()Z move-result p1 if-nez p1, :cond_26e goto :goto_27d .line 570 :cond_26e invoke-interface {v3}, Lorg/apache/http/HttpResponse;->getEntity()Lorg/apache/http/HttpEntity; move-result-object p1 .line 571 new-instance p2, Lorg/apache/http/conn/BasicManagedEntity; iget-object p3, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-direct {p2, p1, p3, v2}, Lorg/apache/http/conn/BasicManagedEntity;->(Lorg/apache/http/HttpEntity;Lorg/apache/http/conn/ManagedClientConnection;Z)V .line 572 invoke-interface {v3, p2}, Lorg/apache/http/HttpResponse;->setEntity(Lorg/apache/http/HttpEntity;)V goto :goto_287 :cond_27d :goto_27d if-eqz v2, :cond_284 .line 565 iget-object p1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {p1}, Lorg/apache/http/conn/ManagedClientConnection;->markReusable()V .line 567 :cond_284 invoke-virtual {p0}, Lorg/apache/http/impl/client/DefaultRequestDirector;->releaseConnection()V :try_end_287 .catch Lorg/apache/http/impl/conn/ConnectionShutdownException; {:try_start_d7 .. :try_end_287} :catch_259 .catch Lorg/apache/http/HttpException; {:try_start_d7 .. :try_end_287} :catch_257 .catch Ljava/io/IOException; {:try_start_d7 .. :try_end_287} :catch_255 .catch Ljava/lang/RuntimeException; {:try_start_d7 .. :try_end_287} :catch_253 :goto_287 return-object v3 .line 589 :goto_288 invoke-direct {p0}, Lorg/apache/http/impl/client/DefaultRequestDirector;->abortConnection()V .line 590 throw p1 .line 586 :goto_28c invoke-direct {p0}, Lorg/apache/http/impl/client/DefaultRequestDirector;->abortConnection()V .line 587 throw p1 .line 583 :goto_290 invoke-direct {p0}, Lorg/apache/http/impl/client/DefaultRequestDirector;->abortConnection()V .line 584 throw p1 .line 578 :goto_294 new-instance p2, Ljava/io/InterruptedIOException; const-string p3, "Connection has been shut down" invoke-direct {p2, p3}, Ljava/io/InterruptedIOException;->(Ljava/lang/String;)V .line 580 invoke-virtual {p2, p1}, Ljava/io/InterruptedIOException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable; .line 581 throw p2 .end method .method protected handleResponse(Lorg/apache/http/impl/client/RoutedRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/impl/client/RoutedRequest; .registers 20 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation move-object/from16 v0, p0 move-object/from16 v7, p2 move-object/from16 v8, p3 .line 1029 invoke-virtual/range {p1 .. p1}, Lorg/apache/http/impl/client/RoutedRequest;->getRoute()Lorg/apache/http/conn/routing/HttpRoute; move-result-object v9 .line 1030 invoke-virtual/range {p1 .. p1}, Lorg/apache/http/impl/client/RoutedRequest;->getRequest()Lorg/apache/http/impl/client/RequestWrapper; move-result-object v10 .line 1032 invoke-virtual {v10}, Lorg/apache/http/impl/client/RequestWrapper;->getParams()Lorg/apache/http/params/HttpParams; move-result-object v11 .line 1034 invoke-static {v11}, Lorg/apache/http/client/params/HttpClientParams;->isAuthenticating(Lorg/apache/http/params/HttpParams;)Z move-result v1 if-eqz v1, :cond_9b .line 1035 const-string v1, "http.target_host" invoke-interface {v8, v1}, Lorg/apache/http/protocol/HttpContext;->getAttribute(Ljava/lang/String;)Ljava/lang/Object; move-result-object v1 check-cast v1, Lorg/apache/http/HttpHost; if-nez v1, :cond_26 .line 1037 invoke-virtual {v9}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object v1 .line 1039 :cond_26 invoke-virtual {v1}, Lorg/apache/http/HttpHost;->getPort()I move-result v2 if-gez v2, :cond_49 .line 1040 iget-object v2, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->connManager:Lorg/apache/http/conn/ClientConnectionManager; invoke-interface {v2}, Lorg/apache/http/conn/ClientConnectionManager;->getSchemeRegistry()Lorg/apache/http/conn/scheme/SchemeRegistry; move-result-object v2 invoke-virtual {v2, v1}, Lorg/apache/http/conn/scheme/SchemeRegistry;->getScheme(Lorg/apache/http/HttpHost;)Lorg/apache/http/conn/scheme/Scheme; move-result-object v2 .line 1041 new-instance v3, Lorg/apache/http/HttpHost; invoke-virtual {v1}, Lorg/apache/http/HttpHost;->getHostName()Ljava/lang/String; move-result-object v4 invoke-virtual {v2}, Lorg/apache/http/conn/scheme/Scheme;->getDefaultPort()I move-result v2 invoke-virtual {v1}, Lorg/apache/http/HttpHost;->getSchemeName()Ljava/lang/String; move-result-object v1 invoke-direct {v3, v4, v2, v1}, Lorg/apache/http/HttpHost;->(Ljava/lang/String;ILjava/lang/String;)V move-object v12, v3 goto :goto_4a :cond_49 move-object v12, v1 .line 1044 :goto_4a iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; iget-object v5, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; move-object v2, v12 move-object/from16 v3, p2 move-object/from16 v6, p3 invoke-virtual/range {v1 .. v6}, Lorg/apache/http/impl/client/HttpAuthenticator;->isAuthenticationRequested(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z move-result v13 .line 1047 invoke-virtual {v9}, Lorg/apache/http/conn/routing/HttpRoute;->getProxyHost()Lorg/apache/http/HttpHost; move-result-object v1 if-nez v1, :cond_63 .line 1050 invoke-virtual {v9}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object v1 :cond_63 move-object v14, v1 .line 1052 iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; iget-object v5, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; move-object v2, v14 move-object/from16 v3, p2 move-object/from16 v6, p3 invoke-virtual/range {v1 .. v6}, Lorg/apache/http/impl/client/HttpAuthenticator;->isAuthenticationRequested(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z move-result v15 if-eqz v13, :cond_87 .line 1056 iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; iget-object v5, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; move-object v2, v12 move-object/from16 v3, p2 move-object/from16 v6, p3 invoke-virtual/range {v1 .. v6}, Lorg/apache/http/impl/client/HttpAuthenticator;->authenticate(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z move-result v1 if-eqz v1, :cond_87 return-object p1 :cond_87 if-eqz v15, :cond_9b .line 1063 iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->authenticator:Lorg/apache/http/impl/client/HttpAuthenticator; iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthStrategy:Lorg/apache/http/client/AuthenticationStrategy; iget-object v5, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; move-object v2, v14 move-object/from16 v3, p2 move-object/from16 v6, p3 invoke-virtual/range {v1 .. v6}, Lorg/apache/http/impl/client/HttpAuthenticator;->authenticate(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z move-result v1 if-eqz v1, :cond_9b return-object p1 .line 1071 :cond_9b invoke-static {v11}, Lorg/apache/http/client/params/HttpClientParams;->isRedirecting(Lorg/apache/http/params/HttpParams;)Z move-result v1 const/4 v2, 0x0 if-eqz v1, :cond_16a iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectStrategy:Lorg/apache/http/client/RedirectStrategy; invoke-interface {v1, v10, v7, v8}, Lorg/apache/http/client/RedirectStrategy;->isRedirected(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Z move-result v1 if-eqz v1, :cond_16a .line 1074 iget v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectCount:I iget v3, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->maxRedirects:I if-ge v1, v3, :cond_14d add-int/lit8 v1, v1, 0x1 .line 1078 iput v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectCount:I .line 1081 iput-object v2, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->virtualHost:Lorg/apache/http/HttpHost; .line 1083 iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->redirectStrategy:Lorg/apache/http/client/RedirectStrategy; invoke-interface {v1, v10, v7, v8}, Lorg/apache/http/client/RedirectStrategy;->getRedirect(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/client/methods/HttpUriRequest; move-result-object v1 .line 1084 invoke-virtual {v10}, Lorg/apache/http/impl/client/RequestWrapper;->getOriginal()Lorg/apache/http/HttpRequest; move-result-object v2 .line 1085 invoke-interface {v2}, Lorg/apache/http/HttpRequest;->getAllHeaders()[Lorg/apache/http/Header; move-result-object v2 invoke-interface {v1, v2}, Lorg/apache/http/client/methods/HttpUriRequest;->setHeaders([Lorg/apache/http/Header;)V .line 1087 invoke-interface {v1}, Lorg/apache/http/client/methods/HttpUriRequest;->getURI()Ljava/net/URI; move-result-object v2 .line 1088 invoke-static {v2}, Lorg/apache/http/client/utils/URIUtils;->extractHost(Ljava/net/URI;)Lorg/apache/http/HttpHost; move-result-object v3 if-eqz v3, :cond_138 .line 1094 invoke-virtual {v9}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object v4 invoke-virtual {v4, v3}, Lorg/apache/http/HttpHost;->equals(Ljava/lang/Object;)Z move-result v4 if-nez v4, :cond_101 .line 1095 iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v5, "Resetting target auth state" invoke-interface {v4, v5}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 1096 iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->targetAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v4}, Lorg/apache/http/auth/AuthState;->reset()V .line 1097 iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v4}, Lorg/apache/http/auth/AuthState;->getAuthScheme()Lorg/apache/http/auth/AuthScheme; move-result-object v4 if-eqz v4, :cond_101 .line 1098 invoke-interface {v4}, Lorg/apache/http/auth/AuthScheme;->isConnectionBased()Z move-result v4 if-eqz v4, :cond_101 .line 1099 iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v5, "Resetting proxy auth state" invoke-interface {v4, v5}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V .line 1100 iget-object v4, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->proxyAuthState:Lorg/apache/http/auth/AuthState; invoke-virtual {v4}, Lorg/apache/http/auth/AuthState;->reset()V .line 1104 :cond_101 invoke-direct {v0, v1}, Lorg/apache/http/impl/client/DefaultRequestDirector;->wrapRequest(Lorg/apache/http/HttpRequest;)Lorg/apache/http/impl/client/RequestWrapper; move-result-object v1 .line 1105 invoke-virtual {v1, v11}, Lorg/apache/http/impl/client/RequestWrapper;->setParams(Lorg/apache/http/params/HttpParams;)V .line 1107 invoke-virtual {v0, v3, v1, v8}, Lorg/apache/http/impl/client/DefaultRequestDirector;->determineRoute(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/conn/routing/HttpRoute; move-result-object v3 .line 1108 new-instance v4, Lorg/apache/http/impl/client/RoutedRequest; invoke-direct {v4, v1, v3}, Lorg/apache/http/impl/client/RoutedRequest;->(Lorg/apache/http/impl/client/RequestWrapper;Lorg/apache/http/conn/routing/HttpRoute;)V .line 1110 iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; invoke-interface {v1}, Lorg/apache/commons/logging/Log;->isDebugEnabled()Z move-result v1 if-eqz v1, :cond_137 .line 1111 iget-object v1, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; new-instance v5, Ljava/lang/StringBuilder; const-string v6, "Redirecting to \'" invoke-direct {v5, v6}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 const-string v5, "\' via " invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-interface {v1, v2}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V :cond_137 return-object v4 .line 1090 :cond_138 new-instance v1, Lorg/apache/http/ProtocolException; new-instance v3, Ljava/lang/StringBuilder; const-string v4, "Redirect URI does not specify a valid host name: " invoke-direct {v3, v4}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v1, v2}, Lorg/apache/http/ProtocolException;->(Ljava/lang/String;)V throw v1 .line 1075 :cond_14d new-instance v1, Lorg/apache/http/client/RedirectException; new-instance v2, Ljava/lang/StringBuilder; const-string v3, "Maximum redirects (" invoke-direct {v2, v3}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V iget v3, v0, Lorg/apache/http/impl/client/DefaultRequestDirector;->maxRedirects:I invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, ") exceeded" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v1, v2}, Lorg/apache/http/client/RedirectException;->(Ljava/lang/String;)V throw v1 :cond_16a return-object v2 .end method .method protected releaseConnection()V .registers 4 .line 733 :try_start_0 iget-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; invoke-interface {v0}, Lorg/apache/http/conn/ManagedClientConnection;->releaseConnection()V :try_end_5 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_5} :catch_6 goto :goto_e :catch_6 move-exception v0 .line 735 iget-object v1, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->log:Lorg/apache/commons/logging/Log; const-string v2, "IOException releasing connection" invoke-interface {v1, v2, v0}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;Ljava/lang/Throwable;)V :goto_e const/4 v0, 0x0 .line 737 iput-object v0, p0, Lorg/apache/http/impl/client/DefaultRequestDirector;->managedConn:Lorg/apache/http/conn/ManagedClientConnection; return-void .end method .method protected rewriteRequestURI(Lorg/apache/http/impl/client/RequestWrapper;Lorg/apache/http/conn/routing/HttpRoute;)V .registers 6 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/ProtocolException; } .end annotation .line 340 :try_start_0 invoke-virtual {p1}, Lorg/apache/http/impl/client/RequestWrapper;->getURI()Ljava/net/URI; move-result-object v0 .line 341 invoke-virtual {p2}, Lorg/apache/http/conn/routing/HttpRoute;->getProxyHost()Lorg/apache/http/HttpHost; move-result-object v1 const/4 v2, 0x1 if-eqz v1, :cond_25 invoke-virtual {p2}, Lorg/apache/http/conn/routing/HttpRoute;->isTunnelled()Z move-result v1 if-nez v1, :cond_25 .line 343 invoke-virtual {v0}, Ljava/net/URI;->isAbsolute()Z move-result v1 if-nez v1, :cond_20 .line 344 invoke-virtual {p2}, Lorg/apache/http/conn/routing/HttpRoute;->getTargetHost()Lorg/apache/http/HttpHost; move-result-object p2 .line 345 invoke-static {v0, p2, v2}, Lorg/apache/http/client/utils/URIUtils;->rewriteURI(Ljava/net/URI;Lorg/apache/http/HttpHost;Z)Ljava/net/URI; move-result-object p2 goto :goto_35 .line 347 :cond_20 invoke-static {v0}, Lorg/apache/http/client/utils/URIUtils;->rewriteURI(Ljava/net/URI;)Ljava/net/URI; move-result-object p2 goto :goto_35 .line 351 :cond_25 invoke-virtual {v0}, Ljava/net/URI;->isAbsolute()Z move-result p2 if-eqz p2, :cond_31 const/4 p2, 0x0 .line 352 invoke-static {v0, p2, v2}, Lorg/apache/http/client/utils/URIUtils;->rewriteURI(Ljava/net/URI;Lorg/apache/http/HttpHost;Z)Ljava/net/URI; move-result-object p2 goto :goto_35 .line 354 :cond_31 invoke-static {v0}, Lorg/apache/http/client/utils/URIUtils;->rewriteURI(Ljava/net/URI;)Ljava/net/URI; move-result-object p2 .line 357 :goto_35 invoke-virtual {p1, p2}, Lorg/apache/http/impl/client/RequestWrapper;->setURI(Ljava/net/URI;)V :try_end_38 .catch Ljava/net/URISyntaxException; {:try_start_0 .. :try_end_38} :catch_39 return-void :catch_39 move-exception p2 .line 360 new-instance v0, Lorg/apache/http/ProtocolException; new-instance v1, Ljava/lang/StringBuilder; const-string v2, "Invalid URI: " invoke-direct {v1, v2}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {p1}, Lorg/apache/http/impl/client/RequestWrapper;->getRequestLine()Lorg/apache/http/RequestLine; move-result-object p1 invoke-interface {p1}, Lorg/apache/http/RequestLine;->getUri()Ljava/lang/String; move-result-object p1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1, p2}, Lorg/apache/http/ProtocolException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw v0 .end method