JavaUrlRequest$AsyncUrlRequestCallback.smali

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


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Laegon/chrome/net/impl/JavaUrlRequest;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x12
    name = "AsyncUrlRequestCallback"
.end annotation


# instance fields
.field final mCallback:Laegon/chrome/net/impl/VersionSafeCallbacks$UrlRequestCallback;

.field final mFallbackExecutor:Ljava/util/concurrent/Executor;

.field final mUserExecutor:Ljava/util/concurrent/Executor;

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


# direct methods
.method constructor <init>(Laegon/chrome/net/impl/JavaUrlRequest;Laegon/chrome/net/UrlRequest$Callback;Ljava/util/concurrent/Executor;)V
    .registers 5

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

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

    new-instance v0, Laegon/chrome/net/impl/VersionSafeCallbacks$UrlRequestCallback;

    invoke-direct {v0, p2}, Laegon/chrome/net/impl/VersionSafeCallbacks$UrlRequestCallback;-><init>(Laegon/chrome/net/UrlRequest$Callback;)V

    iput-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mCallback:Laegon/chrome/net/impl/VersionSafeCallbacks$UrlRequestCallback;

    # getter for: Laegon/chrome/net/impl/JavaUrlRequest;->mAllowDirectExecutor:Z
    invoke-static {p1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$3300(Laegon/chrome/net/impl/JavaUrlRequest;)Z

    move-result v0

    if-eqz v0, :cond_18

    iput-object p3, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

    const/4 v0, 0x0

    iput-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mFallbackExecutor:Ljava/util/concurrent/Executor;

    :goto_17
    return-void

    :cond_18
    new-instance v0, Laegon/chrome/net/impl/JavaUrlRequest$DirectPreventingExecutor;

    invoke-direct {v0, p3}, Laegon/chrome/net/impl/JavaUrlRequest$DirectPreventingExecutor;-><init>(Ljava/util/concurrent/Executor;)V

    iput-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

    iput-object p3, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mFallbackExecutor:Ljava/util/concurrent/Executor;

    goto :goto_17
.end method


# virtual methods
.method execute(Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;)V
    .registers 6

    :try_start_0
    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

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

    # invokes: Laegon/chrome/net/impl/JavaUrlRequest;->userErrorSetting(Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;)Ljava/lang/Runnable;
    invoke-static {v1, p1}, Laegon/chrome/net/impl/JavaUrlRequest;->access$3400(Laegon/chrome/net/impl/JavaUrlRequest;Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;)Ljava/lang/Runnable;

    move-result-object v1

    invoke-interface {v0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
    :try_end_b
    .catch Ljava/util/concurrent/RejectedExecutionException; {:try_start_0 .. :try_end_b} :catch_c

    :goto_b
    return-void

    :catch_c
    move-exception v0

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

    new-instance v2, Laegon/chrome/net/impl/CronetExceptionImpl;

    const-string v3, "Exception posting task to executor"

    invoke-direct {v2, v3, v0}, Laegon/chrome/net/impl/CronetExceptionImpl;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V

    # invokes: Laegon/chrome/net/impl/JavaUrlRequest;->enterErrorState(Laegon/chrome/net/CronetException;)V
    invoke-static {v1, v2}, Laegon/chrome/net/impl/JavaUrlRequest;->access$3500(Laegon/chrome/net/impl/JavaUrlRequest;Laegon/chrome/net/CronetException;)V

    goto :goto_b
.end method

.method onCanceled(Laegon/chrome/net/UrlResponseInfo;)V
    .registers 4

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

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

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

    new-instance v1, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$5;

    invoke-direct {v1, p0, p1}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$5;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;Laegon/chrome/net/UrlResponseInfo;)V

    invoke-interface {v0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V

    return-void
.end method

.method onFailed(Laegon/chrome/net/UrlResponseInfo;Laegon/chrome/net/CronetException;)V
    .registers 5

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

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

    new-instance v0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$7;

    invoke-direct {v0, p0, p1, p2}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$7;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;Laegon/chrome/net/UrlResponseInfo;Laegon/chrome/net/CronetException;)V

    :try_start_a
    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

    invoke-interface {v1, v0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
    :try_end_f
    .catch Laegon/chrome/net/InlineExecutionProhibitedException; {:try_start_a .. :try_end_f} :catch_10

    :cond_f
    :goto_f
    return-void

    :catch_10
    move-exception v1

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mFallbackExecutor:Ljava/util/concurrent/Executor;

    if-eqz v1, :cond_f

    iget-object v1, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mFallbackExecutor:Ljava/util/concurrent/Executor;

    invoke-interface {v1, v0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V

    goto :goto_f
.end method

.method onReadCompleted(Laegon/chrome/net/UrlResponseInfo;Ljava/nio/ByteBuffer;)V
    .registers 4

    new-instance v0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$4;

    invoke-direct {v0, p0, p1, p2}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$4;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;Laegon/chrome/net/UrlResponseInfo;Ljava/nio/ByteBuffer;)V

    invoke-virtual {p0, v0}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->execute(Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;)V

    return-void
.end method

.method onRedirectReceived(Laegon/chrome/net/UrlResponseInfo;Ljava/lang/String;)V
    .registers 4

    new-instance v0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$2;

    invoke-direct {v0, p0, p1, p2}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$2;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;Laegon/chrome/net/UrlResponseInfo;Ljava/lang/String;)V

    invoke-virtual {p0, v0}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->execute(Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;)V

    return-void
.end method

.method onResponseStarted(Laegon/chrome/net/UrlResponseInfo;)V
    .registers 3

    new-instance v0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$3;

    invoke-direct {v0, p0}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$3;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;)V

    invoke-virtual {p0, v0}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->execute(Laegon/chrome/net/impl/JavaUrlRequest$CheckedRunnable;)V

    return-void
.end method

.method onSucceeded(Laegon/chrome/net/UrlResponseInfo;)V
    .registers 4

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

    new-instance v1, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$6;

    invoke-direct {v1, p0, p1}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$6;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;Laegon/chrome/net/UrlResponseInfo;)V

    invoke-interface {v0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V

    return-void
.end method

.method sendStatus(Laegon/chrome/net/impl/VersionSafeCallbacks$UrlRequestStatusListener;I)V
    .registers 5

    iget-object v0, p0, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;->mUserExecutor:Ljava/util/concurrent/Executor;

    new-instance v1, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$1;

    invoke-direct {v1, p0, p1, p2}, Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback$1;-><init>(Laegon/chrome/net/impl/JavaUrlRequest$AsyncUrlRequestCallback;Laegon/chrome/net/impl/VersionSafeCallbacks$UrlRequestStatusListener;I)V

    invoke-interface {v0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V

    return-void
.end method