a$b.smali

.class public final Lcom/garena/reactpush/v3/download/a$b;
.super Ljava/lang/Thread;
.source "SourceFile"


# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
    value = Lcom/garena/reactpush/v3/download/a;->a(Ljava/util/List;)V
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x1
    name = null
.end annotation


# instance fields
.field public final synthetic a:Ljava/io/File;

.field public final synthetic b:Ljava/util/concurrent/CountDownLatch;

.field public final synthetic c:Ljava/util/concurrent/atomic/AtomicBoolean;

.field public final synthetic d:Ljava/util/concurrent/atomic/AtomicReference;

.field public final synthetic e:Ljava/lang/StringBuffer;

.field public final synthetic f:Lcom/garena/reactpush/v3/download/a;


# direct methods
.method public constructor <init>(Lcom/garena/reactpush/v3/download/a;Ljava/io/File;Ljava/util/concurrent/CountDownLatch;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/concurrent/atomic/AtomicReference;Ljava/lang/StringBuffer;)V
    .registers 7

    iput-object p1, p0, Lcom/garena/reactpush/v3/download/a$b;->f:Lcom/garena/reactpush/v3/download/a;

    iput-object p2, p0, Lcom/garena/reactpush/v3/download/a$b;->a:Ljava/io/File;

    iput-object p3, p0, Lcom/garena/reactpush/v3/download/a$b;->b:Ljava/util/concurrent/CountDownLatch;

    iput-object p4, p0, Lcom/garena/reactpush/v3/download/a$b;->c:Ljava/util/concurrent/atomic/AtomicBoolean;

    iput-object p5, p0, Lcom/garena/reactpush/v3/download/a$b;->d:Ljava/util/concurrent/atomic/AtomicReference;

    iput-object p6, p0, Lcom/garena/reactpush/v3/download/a$b;->e:Ljava/lang/StringBuffer;

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

    return-void
.end method


# virtual methods
.method public final run()V
    .registers 11

    invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;

    move-result-object v0

    invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;

    move-result-object v1

    if-ne v0, v1, :cond_c

    const/4 v0, 0x1

    goto :goto_d

    :cond_c
    const/4 v0, 0x0

    :goto_d
    const-string v1, "runnable"

    const-string v2, "com/garena/reactpush/v3/download/BundleDiffDownloaderV3$2"

    const-string v3, "run"

    if-eqz v0, :cond_18

    invoke-static {v3, v2, v1}, Lcom/shopee/monitor/trace/c;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V

    :cond_18
    const/16 v4, -0x28

    const/4 v5, 0x4

    .line 1
    :try_start_1b
    sget-object v6, Lcom/garena/reactpush/a;->e:Lcom/garena/reactpush/util/i;

    const-string v7, "Delete download lock file"

    invoke-interface {v6, v7}, Lcom/garena/reactpush/util/i;->info(Ljava/lang/String;)V

    .line 2
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->a:Ljava/io/File;

    invoke-virtual {v6}, Ljava/io/File;->delete()Z

    .line 3
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->b:Ljava/util/concurrent/CountDownLatch;

    invoke-virtual {v6}, Ljava/util/concurrent/CountDownLatch;->await()V

    .line 4
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->c:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v6

    if-eqz v6, :cond_65

    .line 5
    sget-object v6, Lcom/garena/reactpush/a;->e:Lcom/garena/reactpush/util/i;

    const-string v7, "Create download lock file"

    invoke-interface {v6, v7}, Lcom/garena/reactpush/util/i;->info(Ljava/lang/String;)V

    .line 6
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->a:Ljava/io/File;

    invoke-virtual {v6}, Ljava/io/File;->createNewFile()Z

    move-result v6

    if-eqz v6, :cond_4b

    .line 7
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->f:Lcom/garena/reactpush/v3/download/a;

    .line 8
    iget-object v6, v6, Lcom/garena/reactpush/v3/download/a;->c:Lcom/garena/reactpush/v2/sync/a;

    .line 9
    invoke-interface {v6}, Lcom/garena/reactpush/v2/sync/a;->onSuccess()V

    goto :goto_b1

    .line 10
    :cond_4b
    sget-object v6, Lcom/garena/reactpush/a;->i:Lcom/garena/reactpush/track/h;

    const-string v7, "Failed to create JS lock file in download folder"

    .line 11
    invoke-static {v6, v4, v7, v5}, Lcom/garena/reactpush/track/h;->b(Lcom/garena/reactpush/track/h;ILjava/lang/String;I)V

    .line 12
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->f:Lcom/garena/reactpush/v3/download/a;

    .line 13
    iget-object v6, v6, Lcom/garena/reactpush/v3/download/a;->c:Lcom/garena/reactpush/v2/sync/a;

    .line 14
    new-instance v7, Ljava/lang/Exception;

    const-string v8, "Failed to create JS lock file in download folder."

    invoke-direct {v7, v8}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V

    invoke-interface {v6, v7}, Lcom/garena/reactpush/v2/sync/a;->onFailure(Ljava/lang/Exception;)V

    goto :goto_b1

    :catch_61
    move-exception v6

    goto :goto_99

    :catch_63
    move-exception v6

    goto :goto_99

    .line 15
    :cond_65
    sget-object v6, Lcom/garena/reactpush/a;->i:Lcom/garena/reactpush/track/h;

    const/16 v7, -0x29

    iget-object v8, p0, Lcom/garena/reactpush/v3/download/a$b;->d:Ljava/util/concurrent/atomic/AtomicReference;

    invoke-virtual {v8}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;

    move-result-object v8

    if-eqz v8, :cond_7e

    iget-object v8, p0, Lcom/garena/reactpush/v3/download/a$b;->d:Ljava/util/concurrent/atomic/AtomicReference;

    invoke-virtual {v8}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;

    move-result-object v8

    check-cast v8, Ljava/lang/Exception;

    invoke-virtual {v8}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;

    move-result-object v8

    goto :goto_80

    :cond_7e
    const-string v8, ""

    :goto_80
    iget-object v9, p0, Lcom/garena/reactpush/v3/download/a$b;->e:Ljava/lang/StringBuffer;

    invoke-virtual {v9}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;

    move-result-object v9

    invoke-virtual {v6, v7, v8, v9}, Lcom/garena/reactpush/track/h;->a(ILjava/lang/String;Ljava/lang/String;)V

    .line 16
    iget-object v6, p0, Lcom/garena/reactpush/v3/download/a$b;->f:Lcom/garena/reactpush/v3/download/a;

    .line 17
    iget-object v6, v6, Lcom/garena/reactpush/v3/download/a;->c:Lcom/garena/reactpush/v2/sync/a;

    .line 18
    iget-object v7, p0, Lcom/garena/reactpush/v3/download/a$b;->d:Ljava/util/concurrent/atomic/AtomicReference;

    invoke-virtual {v7}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;

    move-result-object v7

    check-cast v7, Ljava/lang/Exception;

    invoke-interface {v6, v7}, Lcom/garena/reactpush/v2/sync/a;->onFailure(Ljava/lang/Exception;)V
    :try_end_98
    .catch Ljava/lang/InterruptedException; {:try_start_1b .. :try_end_98} :catch_63
    .catch Ljava/io/IOException; {:try_start_1b .. :try_end_98} :catch_61

    goto :goto_b1

    .line 19
    :goto_99
    sget-object v7, Lcom/garena/reactpush/a;->i:Lcom/garena/reactpush/track/h;

    invoke-virtual {v6}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;

    move-result-object v6

    .line 20
    invoke-static {v7, v4, v6, v5}, Lcom/garena/reactpush/track/h;->b(Lcom/garena/reactpush/track/h;ILjava/lang/String;I)V

    .line 21
    iget-object v4, p0, Lcom/garena/reactpush/v3/download/a$b;->f:Lcom/garena/reactpush/v3/download/a;

    .line 22
    iget-object v4, v4, Lcom/garena/reactpush/v3/download/a;->c:Lcom/garena/reactpush/v2/sync/a;

    .line 23
    iget-object v5, p0, Lcom/garena/reactpush/v3/download/a$b;->d:Ljava/util/concurrent/atomic/AtomicReference;

    invoke-virtual {v5}, Ljava/util/concurrent/atomic/AtomicReference;->get()Ljava/lang/Object;

    move-result-object v5

    check-cast v5, Ljava/lang/Exception;

    invoke-interface {v4, v5}, Lcom/garena/reactpush/v2/sync/a;->onFailure(Ljava/lang/Exception;)V

    :goto_b1
    if-eqz v0, :cond_b6

    .line 24
    invoke-static {v3, v2, v1}, Lcom/shopee/monitor/trace/c;->b(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V

    :cond_b6
    return-void
.end method