CronetBidirectionalStream$1.smali

.class Laegon/chrome/net/impl/CronetBidirectionalStream$1;
.super Ljava/lang/Object;

# interfaces
.implements Ljava/lang/Runnable;


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

.field final synthetic val$requestHeadersSent:Z


# direct methods
.method constructor <init>(Laegon/chrome/net/impl/CronetBidirectionalStream;Z)V
    .registers 3

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

    iput-boolean p2, p0, Laegon/chrome/net/impl/CronetBidirectionalStream$1;->val$requestHeadersSent:Z

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

    return-void
.end method


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

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

    # getter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mNativeStreamLock:Ljava/lang/Object;
    invoke-static {v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$000(Laegon/chrome/net/impl/CronetBidirectionalStream;)Ljava/lang/Object;

    move-result-object v1

    monitor-enter v1

    :try_start_7
    iget-object v0, p0, Laegon/chrome/net/impl/CronetBidirectionalStream$1;->this$0:Laegon/chrome/net/impl/CronetBidirectionalStream;

    # invokes: Laegon/chrome/net/impl/CronetBidirectionalStream;->isDoneLocked()Z
    invoke-static {v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$100(Laegon/chrome/net/impl/CronetBidirectionalStream;)Z

    move-result v0

    if-eqz v0, :cond_11

    monitor-exit v1

    :goto_10
    return-void

    :cond_11
    iget-object v0, p0, Laegon/chrome/net/impl/CronetBidirectionalStream$1;->this$0:Laegon/chrome/net/impl/CronetBidirectionalStream;

    iget-boolean v2, p0, Laegon/chrome/net/impl/CronetBidirectionalStream$1;->val$requestHeadersSent:Z

    # setter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mRequestHeadersSent:Z
    invoke-static {v0, v2}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$902(Laegon/chrome/net/impl/CronetBidirectionalStream;Z)Z

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

    const/4 v2, 0x2

    # setter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mReadState:I
    invoke-static {v0, v2}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$202(Laegon/chrome/net/impl/CronetBidirectionalStream;I)I

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

    # getter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mInitialMethod:Ljava/lang/String;
    invoke-static {v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$1000(Laegon/chrome/net/impl/CronetBidirectionalStream;)Ljava/lang/String;

    move-result-object v0

    # invokes: Laegon/chrome/net/impl/CronetBidirectionalStream;->doesMethodAllowWriteData(Ljava/lang/String;)Z
    invoke-static {v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$1100(Ljava/lang/String;)Z

    move-result v0

    if-nez v0, :cond_4d

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

    # getter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mRequestHeadersSent:Z
    invoke-static {v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$900(Laegon/chrome/net/impl/CronetBidirectionalStream;)Z

    move-result v0

    if-eqz v0, :cond_4d

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

    const/16 v2, 0xa

    # setter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mWriteState:I
    invoke-static {v0, v2}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$302(Laegon/chrome/net/impl/CronetBidirectionalStream;I)I

    :goto_39
    monitor-exit v1
    :try_end_3a
    .catchall {:try_start_7 .. :try_end_3a} :catchall_55

    :try_start_3a
    iget-object v0, p0, Laegon/chrome/net/impl/CronetBidirectionalStream$1;->this$0:Laegon/chrome/net/impl/CronetBidirectionalStream;

    # getter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mCallback:Laegon/chrome/net/impl/VersionSafeCallbacks$BidirectionalStreamCallback;
    invoke-static {v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$500(Laegon/chrome/net/impl/CronetBidirectionalStream;)Laegon/chrome/net/impl/VersionSafeCallbacks$BidirectionalStreamCallback;

    move-result-object v0

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

    invoke-virtual {v0, v1}, Laegon/chrome/net/impl/VersionSafeCallbacks$BidirectionalStreamCallback;->onStreamReady(Laegon/chrome/net/BidirectionalStream;)V
    :try_end_45
    .catch Ljava/lang/Exception; {:try_start_3a .. :try_end_45} :catch_46

    goto :goto_10

    :catch_46
    move-exception v0

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

    # invokes: Laegon/chrome/net/impl/CronetBidirectionalStream;->onCallbackException(Ljava/lang/Exception;)V
    invoke-static {v1, v0}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$700(Laegon/chrome/net/impl/CronetBidirectionalStream;Ljava/lang/Exception;)V

    goto :goto_10

    :cond_4d
    :try_start_4d
    iget-object v0, p0, Laegon/chrome/net/impl/CronetBidirectionalStream$1;->this$0:Laegon/chrome/net/impl/CronetBidirectionalStream;

    const/16 v2, 0x8

    # setter for: Laegon/chrome/net/impl/CronetBidirectionalStream;->mWriteState:I
    invoke-static {v0, v2}, Laegon/chrome/net/impl/CronetBidirectionalStream;->access$302(Laegon/chrome/net/impl/CronetBidirectionalStream;I)I

    goto :goto_39

    :catchall_55
    move-exception v0

    monitor-exit v1
    :try_end_57
    .catchall {:try_start_4d .. :try_end_57} :catchall_55

    throw v0
.end method