.class public Lorg/apache/http/client/protocol/RequestClientConnControl; .super Ljava/lang/Object; .source "RequestClientConnControl.java" # interfaces .implements Lorg/apache/http/HttpRequestInterceptor; # static fields .field private static final PROXY_CONN_DIRECTIVE:Ljava/lang/String; = "Proxy-Connection" # instance fields .field private final log:Lorg/apache/commons/logging/Log; # direct methods .method public constructor ()V .registers 2 .line 59 invoke-direct {p0}, Ljava/lang/Object;->()V .line 54 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 invoke-static {v0}, Lorg/apache/commons/logging/LogFactory;->getLog(Ljava/lang/Class;)Lorg/apache/commons/logging/Log; move-result-object v0 iput-object v0, p0, Lorg/apache/http/client/protocol/RequestClientConnControl;->log:Lorg/apache/commons/logging/Log; return-void .end method # virtual methods .method public process(Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)V .registers 7 .annotation system Ldalvik/annotation/Throws; value = { Lorg/apache/http/HttpException;, Ljava/io/IOException; } .end annotation .line 65 const-string v0, "HTTP request" invoke-static {p1, v0}, Lorg/apache/http/util/Args;->notNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; .line 67 invoke-interface {p1}, Lorg/apache/http/HttpRequest;->getRequestLine()Lorg/apache/http/RequestLine; move-result-object v0 invoke-interface {v0}, Lorg/apache/http/RequestLine;->getMethod()Ljava/lang/String; move-result-object v0 .line 68 const-string v1, "CONNECT" invoke-virtual {v0, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z move-result v0 const-string v1, "Keep-Alive" const-string v2, "Proxy-Connection" if-eqz v0, :cond_1d .line 69 invoke-interface {p1, v2, v1}, Lorg/apache/http/HttpRequest;->setHeader(Ljava/lang/String;Ljava/lang/String;)V return-void .line 73 :cond_1d invoke-static {p2}, Lorg/apache/http/client/protocol/HttpClientContext;->adapt(Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/client/protocol/HttpClientContext; move-result-object p2 .line 76 invoke-virtual {p2}, Lorg/apache/http/client/protocol/HttpClientContext;->getHttpRoute()Lorg/apache/http/conn/routing/RouteInfo; move-result-object p2 if-nez p2, :cond_2f .line 78 iget-object p1, p0, Lorg/apache/http/client/protocol/RequestClientConnControl;->log:Lorg/apache/commons/logging/Log; const-string p2, "Connection route not set in the context" invoke-interface {p1, p2}, Lorg/apache/commons/logging/Log;->debug(Ljava/lang/Object;)V return-void .line 82 :cond_2f invoke-interface {p2}, Lorg/apache/http/conn/routing/RouteInfo;->getHopCount()I move-result v0 const/4 v3, 0x1 if-eq v0, v3, :cond_3c invoke-interface {p2}, Lorg/apache/http/conn/routing/RouteInfo;->isTunnelled()Z move-result v0 if-eqz v0, :cond_47 .line 83 :cond_3c const-string v0, "Connection" invoke-interface {p1, v0}, Lorg/apache/http/HttpRequest;->containsHeader(Ljava/lang/String;)Z move-result v3 if-nez v3, :cond_47 .line 84 invoke-interface {p1, v0, v1}, Lorg/apache/http/HttpRequest;->addHeader(Ljava/lang/String;Ljava/lang/String;)V .line 87 :cond_47 invoke-interface {p2}, Lorg/apache/http/conn/routing/RouteInfo;->getHopCount()I move-result v0 const/4 v3, 0x2 if-ne v0, v3, :cond_5d invoke-interface {p2}, Lorg/apache/http/conn/routing/RouteInfo;->isTunnelled()Z move-result p2 if-nez p2, :cond_5d .line 88 invoke-interface {p1, v2}, Lorg/apache/http/HttpRequest;->containsHeader(Ljava/lang/String;)Z move-result p2 if-nez p2, :cond_5d .line 89 invoke-interface {p1, v2, v1}, Lorg/apache/http/HttpRequest;->addHeader(Ljava/lang/String;Ljava/lang/String;)V :cond_5d return-void .end method