CronetUploadDataStream$1.smali

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

# interfaces
.implements Ljava/lang/Runnable;


# static fields
.field static final synthetic $assertionsDisabled:Z


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


# direct methods
.method static constructor <clinit>()V
    .registers 1

    const-class v0, Laegon/chrome/net/impl/CronetUploadDataStream;

    invoke-virtual {v0}, Ljava/lang/Class;->desiredAssertionStatus()Z

    move-result v0

    if-nez v0, :cond_c

    const/4 v0, 0x1

    :goto_9
    sput-boolean v0, Laegon/chrome/net/impl/CronetUploadDataStream$1;->$assertionsDisabled:Z

    return-void

    :cond_c
    const/4 v0, 0x0

    goto :goto_9
.end method

.method constructor <init>(Laegon/chrome/net/impl/CronetUploadDataStream;)V
    .registers 2

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

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

    return-void
.end method


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

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

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

    move-result-object v1

    monitor-enter v1

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

    # getter for: Laegon/chrome/net/impl/CronetUploadDataStream;->mUploadDataStreamAdapter:J
    invoke-static {v0}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$100(Laegon/chrome/net/impl/CronetUploadDataStream;)J

    move-result-wide v2

    const-wide/16 v4, 0x0

    cmp-long v0, v2, v4

    if-nez v0, :cond_15

    monitor-exit v1

    :goto_14
    return-void

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

    const/4 v2, 0x3

    # invokes: Laegon/chrome/net/impl/CronetUploadDataStream;->checkState(I)V
    invoke-static {v0, v2}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$200(Laegon/chrome/net/impl/CronetUploadDataStream;I)V

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

    # getter for: Laegon/chrome/net/impl/CronetUploadDataStream;->mByteBuffer:Ljava/nio/ByteBuffer;
    invoke-static {v0}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$300(Laegon/chrome/net/impl/CronetUploadDataStream;)Ljava/nio/ByteBuffer;

    move-result-object v0

    if-nez v0, :cond_2e

    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v2, "Unexpected readData call. Buffer is null"

    invoke-direct {v0, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw v0

    :catchall_2b
    move-exception v0

    monitor-exit v1
    :try_end_2d
    .catchall {:try_start_7 .. :try_end_2d} :catchall_2b

    throw v0

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

    const/4 v2, 0x0

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

    monitor-exit v1
    :try_end_35
    .catchall {:try_start_2e .. :try_end_35} :catchall_2b

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

    # invokes: Laegon/chrome/net/impl/CronetUploadDataStream;->checkCallingThread()V
    invoke-static {v0}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$500(Laegon/chrome/net/impl/CronetUploadDataStream;)V

    sget-boolean v0, Laegon/chrome/net/impl/CronetUploadDataStream$1;->$assertionsDisabled:Z

    if-nez v0, :cond_57

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

    # getter for: Laegon/chrome/net/impl/CronetUploadDataStream;->mByteBuffer:Ljava/nio/ByteBuffer;
    invoke-static {v0}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$300(Laegon/chrome/net/impl/CronetUploadDataStream;)Ljava/nio/ByteBuffer;

    move-result-object v0

    invoke-virtual {v0}, Ljava/nio/ByteBuffer;->position()I

    move-result v0

    if-eqz v0, :cond_57

    new-instance v0, Ljava/lang/AssertionError;

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

    throw v0
    :try_end_50
    .catch Ljava/lang/Exception; {:try_start_35 .. :try_end_50} :catch_50

    :catch_50
    move-exception v0

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

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

    goto :goto_14

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

    # getter for: Laegon/chrome/net/impl/CronetUploadDataStream;->mDataProvider:Laegon/chrome/net/impl/VersionSafeCallbacks$UploadDataProviderWrapper;
    invoke-static {v0}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$600(Laegon/chrome/net/impl/CronetUploadDataStream;)Laegon/chrome/net/impl/VersionSafeCallbacks$UploadDataProviderWrapper;

    move-result-object v0

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

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

    # getter for: Laegon/chrome/net/impl/CronetUploadDataStream;->mByteBuffer:Ljava/nio/ByteBuffer;
    invoke-static {v2}, Laegon/chrome/net/impl/CronetUploadDataStream;->access$300(Laegon/chrome/net/impl/CronetUploadDataStream;)Ljava/nio/ByteBuffer;

    move-result-object v2

    invoke-virtual {v0, v1, v2}, Laegon/chrome/net/impl/VersionSafeCallbacks$UploadDataProviderWrapper;->read(Laegon/chrome/net/UploadDataSink;Ljava/nio/ByteBuffer;)V
    :try_end_68
    .catch Ljava/lang/Exception; {:try_start_57 .. :try_end_68} :catch_50

    goto :goto_14
.end method