Logger$WriteLogToSdCardThreadHandler.smali

.class Lio/dcloud/common/adapter/util/Logger$WriteLogToSdCardThreadHandler;
.super Landroid/os/Handler;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lio/dcloud/common/adapter/util/Logger;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x8
    name = "WriteLogToSdCardThreadHandler"
.end annotation


# direct methods
.method public constructor <init>(Landroid/os/Looper;)V
    .registers 2

    .line 1
    invoke-direct {p0, p1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V

    return-void
.end method


# virtual methods
.method public handleMessage(Landroid/os/Message;)V
    .registers 6

    .line 1
    invoke-super {p0, p1}, Landroid/os/Handler;->handleMessage(Landroid/os/Message;)V

    .line 2
    iget-object p1, p1, Landroid/os/Message;->obj:Ljava/lang/Object;

    if-eqz p1, :cond_6c

    instance-of v0, p1, [Ljava/lang/String;

    if-nez v0, :cond_c

    goto :goto_6c

    .line 5
    :cond_c
    check-cast p1, [Ljava/lang/String;

    .line 6
    array-length v0, p1

    const/4 v1, 0x3

    if-ge v0, v1, :cond_13

    return-void

    :cond_13
    const/4 v0, 0x0

    .line 9
    aget-object v0, p1, v0

    const/4 v1, 0x1

    .line 10
    aget-object v2, p1, v1

    const/4 v3, 0x2

    .line 11
    aget-object p1, p1, v3

    .line 12
    invoke-static {v0, v2, p1}, Lio/dcloud/common/adapter/util/Logger;->generateLog(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object p1

    .line 13
    # getter for: Lio/dcloud/common/adapter/util/Logger;->mLogFile:Ljava/io/File;
    invoke-static {}, Lio/dcloud/common/adapter/util/Logger;->access$100()Ljava/io/File;

    move-result-object v0

    if-eqz v0, :cond_6c

    # getter for: Lio/dcloud/common/adapter/util/Logger;->mLogFile:Ljava/io/File;
    invoke-static {}, Lio/dcloud/common/adapter/util/Logger;->access$100()Ljava/io/File;

    move-result-object v0

    invoke-virtual {v0}, Ljava/io/File;->exists()Z

    move-result v0

    if-eqz v0, :cond_6c

    if-eqz p1, :cond_6c

    const/4 v0, 0x0

    .line 16
    :try_start_33
    new-instance v2, Ljava/io/FileOutputStream;

    # getter for: Lio/dcloud/common/adapter/util/Logger;->mLogFile:Ljava/io/File;
    invoke-static {}, Lio/dcloud/common/adapter/util/Logger;->access$100()Ljava/io/File;

    move-result-object v3

    invoke-direct {v2, v3, v1}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V
    :try_end_3c
    .catch Ljava/lang/Exception; {:try_start_33 .. :try_end_3c} :catch_52
    .catchall {:try_start_33 .. :try_end_3c} :catchall_50

    .line 17
    :try_start_3c
    invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B

    move-result-object p1

    .line 18
    invoke-virtual {v2, p1}, Ljava/io/OutputStream;->write([B)V

    .line 19
    invoke-virtual {v2}, Ljava/io/OutputStream;->flush()V
    :try_end_46
    .catch Ljava/lang/Exception; {:try_start_3c .. :try_end_46} :catch_4d
    .catchall {:try_start_3c .. :try_end_46} :catchall_4a

    .line 25
    :try_start_46
    invoke-virtual {v2}, Ljava/io/OutputStream;->close()V
    :try_end_49
    .catch Ljava/io/IOException; {:try_start_46 .. :try_end_49} :catch_5c

    goto :goto_6c

    :catchall_4a
    move-exception p1

    move-object v0, v2

    goto :goto_61

    :catch_4d
    move-exception p1

    move-object v0, v2

    goto :goto_53

    :catchall_50
    move-exception p1

    goto :goto_61

    :catch_52
    move-exception p1

    .line 26
    :goto_53
    :try_start_53
    invoke-virtual {p1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_56
    .catchall {:try_start_53 .. :try_end_56} :catchall_50

    if-eqz v0, :cond_6c

    .line 30
    :try_start_58
    invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
    :try_end_5b
    .catch Ljava/io/IOException; {:try_start_58 .. :try_end_5b} :catch_5c

    goto :goto_6c

    :catch_5c
    move-exception p1

    .line 33
    invoke-virtual {p1}, Ljava/io/IOException;->printStackTrace()V

    goto :goto_6c

    :goto_61
    if-eqz v0, :cond_6b

    .line 34
    :try_start_63
    invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
    :try_end_66
    .catch Ljava/io/IOException; {:try_start_63 .. :try_end_66} :catch_67

    goto :goto_6b

    :catch_67
    move-exception v0

    .line 37
    invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V

    .line 39
    :cond_6b
    :goto_6b
    throw p1

    :cond_6c
    :goto_6c
    return-void
.end method