JavaUrlRequest$4.smali

.class Laegon/chrome/net/impl/JavaUrlRequest$4;
.super Ljava/lang/Object;

# interfaces
.implements Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;


# instance fields
.field final synthetic this$0:Laegon/chrome/net/impl/JavaUrlRequest;


# direct methods
.method constructor <init>(Laegon/chrome/net/impl/JavaUrlRequest;)V
    .registers 2

    iput-object p1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    return-void
.end method


# virtual methods
.method public run()V
    .registers 13

    const/16 v11, 0x190

    const/4 v5, 0x0

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v0

    if-nez v0, :cond_c

    :goto_b
    return-void

    :cond_c
    new-instance v4, Ljava/util/ArrayList;

    invoke-direct {v4}, Ljava/util/ArrayList;-><init>()V

    const-string v6, "http/1.1"

    move v0, v5

    :goto_14
    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v1

    invoke-virtual {v1, v0}, Ljava/net/HttpURLConnection;->getHeaderFieldKey(I)Ljava/lang/String;

    move-result-object v1

    if-eqz v1, :cond_4f

    const-string v2, "X-Android-Selected-Transport"

    invoke-virtual {v2, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z

    move-result v2

    if-eqz v2, :cond_32

    iget-object v2, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v2}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v2

    invoke-virtual {v2, v0}, Ljava/net/HttpURLConnection;->getHeaderField(I)Ljava/lang/String;

    move-result-object v6

    :cond_32
    const-string v2, "X-Android"

    invoke-virtual {v1, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z

    move-result v2

    if-nez v2, :cond_4c

    new-instance v2, Ljava/util/AbstractMap$SimpleEntry;

    iget-object v3, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v3}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v3

    invoke-virtual {v3, v0}, Ljava/net/HttpURLConnection;->getHeaderField(I)Ljava/lang/String;

    move-result-object v3

    invoke-direct {v2, v1, v3}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V

    invoke-interface {v4, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    :cond_4c
    add-int/lit8 v0, v0, 0x1

    goto :goto_14

    :cond_4f
    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v0

    invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getResponseCode()I

    move-result v2

    iget-object v10, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    new-instance v0, Laegon/chrome/net/impl/UrlResponseInfoImpl;

    new-instance v1, Ljava/util/ArrayList;

    iget-object v3, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mUrlChain:Ljava/util/List;
    invoke-static {v3}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1100(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/util/List;

    move-result-object v3

    invoke-direct {v1, v3}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V

    iget-object v3, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v3}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v3

    invoke-virtual {v3}, Ljava/net/HttpURLConnection;->getResponseMessage()Ljava/lang/String;

    move-result-object v3

    invoke-static {v4}, Ljava/util/Collections;->unmodifiableList(Ljava/util/List;)Ljava/util/List;

    move-result-object v4

    const-string v7, ""

    const-wide/16 v8, 0x0

    invoke-direct/range {v0 .. v9}, Laegon/chrome/net/impl/UrlResponseInfoImpl;-><init>(Ljava/util/List;ILjava/lang/String;Ljava/util/List;ZLjava/lang/String;Ljava/lang/String;J)V

    # setter for: Laegon/chrome/net/impl/JavaUrlRequest;->mUrlResponseInfo:Laegon/chrome/net/impl/UrlResponseInfoImpl;
    invoke-static {v10, v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1502(Laegon/chrome/net/impl/JavaUrlRequest;Laegon/chrome/net/impl/UrlResponseInfoImpl;)Laegon/chrome/net/impl/UrlResponseInfoImpl;

    const/16 v0, 0x12c

    if-lt v2, v0, :cond_97

    if-ge v2, v11, :cond_97

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mUrlResponseInfo:Laegon/chrome/net/impl/UrlResponseInfoImpl;
    invoke-static {v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1500(Laegon/chrome/net/impl/JavaUrlRequest;)Laegon/chrome/net/impl/UrlResponseInfoImpl;

    move-result-object v1

    invoke-virtual {v1}, Laegon/chrome/net/impl/UrlResponseInfoImpl;->getAllHeaders()Ljava/util/Map;

    move-result-object v1

    # invokes: Laegon/chrome/net/impl/JavaUrlRequest;->fireRedirectReceived(Ljava/util/Map;)V
    invoke-static {v0, v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1600(Laegon/chrome/net/impl/JavaUrlRequest;Ljava/util/Map;)V

    goto/16 :goto_b

    :cond_97
    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # invokes: Laegon/chrome/net/impl/JavaUrlRequest;->fireCloseUploadDataProvider()V
    invoke-static {v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1700(Laegon/chrome/net/impl/JavaUrlRequest;)V

    if-lt v2, v11, :cond_c6

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v0

    invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getErrorStream()Ljava/io/InputStream;

    move-result-object v0

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    if-nez v0, :cond_c1

    const/4 v0, 0x0

    :goto_ad
    # setter for: Laegon/chrome/net/impl/JavaUrlRequest;->mResponseChannel:Ljava/nio/channels/ReadableByteChannel;
    invoke-static {v1, v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1802(Laegon/chrome/net/impl/JavaUrlRequest;Ljava/nio/channels/ReadableByteChannel;)Ljava/nio/channels/ReadableByteChannel;

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCallbackAsync:Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;
    invoke-static {v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1900(Laegon/chrome/net/impl/JavaUrlRequest;)Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;

    move-result-object v0

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mUrlResponseInfo:Laegon/chrome/net/impl/UrlResponseInfoImpl;
    invoke-static {v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1500(Laegon/chrome/net/impl/JavaUrlRequest;)Laegon/chrome/net/impl/UrlResponseInfoImpl;

    move-result-object v1

    invoke-virtual {v0, v1}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->onResponseStarted(Laegon/chrome/net/UrlResponseInfo;)V

    goto/16 :goto_b

    :cond_c1
    invoke-static {v0}, Laegon/chrome/net/impl/InputStreamChannel;->wrap(Ljava/io/InputStream;)Ljava/nio/channels/ReadableByteChannel;

    move-result-object v0

    goto :goto_ad

    :cond_c6
    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCurrentUrlConnection:Ljava/net/HttpURLConnection;
    invoke-static {v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1400(Laegon/chrome/net/impl/JavaUrlRequest;)Ljava/net/HttpURLConnection;

    move-result-object v1

    invoke-virtual {v1}, Ljava/net/HttpURLConnection;->getInputStream()Ljava/io/InputStream;

    move-result-object v1

    invoke-static {v1}, Laegon/chrome/net/impl/InputStreamChannel;->wrap(Ljava/io/InputStream;)Ljava/nio/channels/ReadableByteChannel;

    move-result-object v1

    # setter for: Laegon/chrome/net/impl/JavaUrlRequest;->mResponseChannel:Ljava/nio/channels/ReadableByteChannel;
    invoke-static {v0, v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1802(Laegon/chrome/net/impl/JavaUrlRequest;Ljava/nio/channels/ReadableByteChannel;)Ljava/nio/channels/ReadableByteChannel;

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mCallbackAsync:Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;
    invoke-static {v0}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1900(Laegon/chrome/net/impl/JavaUrlRequest;)Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;

    move-result-object v0

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$4;->this$0:Laegon/chrome/net/impl/JavaUrlRequest;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mUrlResponseInfo:Laegon/chrome/net/impl/UrlResponseInfoImpl;
    invoke-static {v1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$1500(Laegon/chrome/net/impl/JavaUrlRequest;)Laegon/chrome/net/impl/UrlResponseInfoImpl;

    move-result-object v1

    invoke-virtual {v0, v1}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->onResponseStarted(Laegon/chrome/net/UrlResponseInfo;)V

    goto/16 :goto_b
.end method