CollectorError.smali

.class public Lcn/tongdun/android/shell/common/CollectorError;
.super Ljava/lang/Object;
.source "TongDun"


# static fields
.field public static final KEY_REASON:Ljava/lang/String;

.field public static final KEY_STACK:Ljava/lang/String;

.field public static final KEY_TYPE:Ljava/lang/String;

.field public static errorMap:Ljava/util/Map;


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

    const-string v0, "687b7d6e"

    const/16 v1, 0x61

    invoke-static {v0, v1}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lcn/tongdun/android/shell/common/CollectorError;->KEY_TYPE:Ljava/lang/String;

    const-string v0, "6f7466766e"

    const/16 v1, 0x64

    invoke-static {v0, v1}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lcn/tongdun/android/shell/common/CollectorError;->KEY_STACK:Ljava/lang/String;

    const-string v0, "6e2f763d6a3c"

    const/16 v1, 0x2f

    invoke-static {v0, v1}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lcn/tongdun/android/shell/common/CollectorError;->KEY_REASON:Ljava/lang/String;

    new-instance v0, Ljava/util/Hashtable;

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

    sput-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->ERROR_INIT:Lcn/tongdun/android/shell/common/CollectorError$TYPE;

    const-string v1, "5843490707061c5255554d4c49420c0b0b0c16"

    const/16 v2, 0x79

    invoke-static {v1, v2}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v1

    invoke-static {v0, v1}, Lcn/tongdun/android/shell/common/CollectorError;->addError(Lcn/tongdun/android/shell/common/CollectorError$TYPE;Ljava/lang/String;)V

    return-void
.end method

.method public static addError(Lcn/tongdun/android/shell/common/CollectorError$TYPE;Ljava/lang/String;)V
    .registers 4

    new-instance v0, Lorg/json/JSONObject;

    invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V

    :try_start_5
    sget-object v1, Lcn/tongdun/android/shell/common/CollectorError;->KEY_REASON:Ljava/lang/String;

    invoke-virtual {v0, v1, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_a
    .catch Lorg/json/JSONException; {:try_start_5 .. :try_end_a} :catch_b

    goto :goto_13

    :catch_b
    move-exception p1

    invoke-virtual {p1}, Lorg/json/JSONException;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-static {p1}, Lcn/tongdun/android/shell/utils/LogUtil;->err(Ljava/lang/String;)V

    :goto_13
    invoke-static {p0, v0}, Lcn/tongdun/android/shell/common/CollectorError;->addError(Lcn/tongdun/android/shell/common/CollectorError$TYPE;Lorg/json/JSONObject;)V

    return-void
.end method

.method public static addError(Lcn/tongdun/android/shell/common/CollectorError$TYPE;Lorg/json/JSONObject;)V
    .registers 5

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    if-nez v0, :cond_b

    new-instance v0, Ljava/util/Hashtable;

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

    sput-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    :cond_b
    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-virtual {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code()Ljava/lang/String;

    move-result-object v1

    invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z

    move-result v0

    const-string v1, ""

    if-eqz v0, :cond_65

    if-eqz p1, :cond_8a

    invoke-virtual {p1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object p1

    if-nez p1, :cond_22

    goto :goto_23

    :cond_22
    move-object v1, p1

    :goto_23
    sget-object p1, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    # getter for: Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code:Ljava/lang/String;
    invoke-static {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->access$000(Lcn/tongdun/android/shell/common/CollectorError$TYPE;)Ljava/lang/String;

    move-result-object v0

    invoke-interface {p1, v0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Ljava/lang/String;

    if-nez p1, :cond_3b

    sget-object p1, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-virtual {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code()Ljava/lang/String;

    move-result-object p0

    invoke-interface {p1, p0, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_8a

    :cond_3b
    invoke-virtual {p1, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_8a

    new-instance v0, Ljava/lang/StringBuilder;

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

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const/16 p1, 0x4d

    const-string v2, "3056"

    invoke-static {v2, p1}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-virtual {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code()Ljava/lang/String;

    move-result-object p0

    invoke-interface {v0, p0, p1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_8a

    :cond_65
    if-eqz p1, :cond_79

    invoke-virtual {p1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object p1

    if-nez p1, :cond_6e

    goto :goto_6f

    :cond_6e
    move-object v1, p1

    :goto_6f
    sget-object p1, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-virtual {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code()Ljava/lang/String;

    move-result-object p0

    invoke-interface {p1, p0, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_8a

    :cond_79
    sget-object p1, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-virtual {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code()Ljava/lang/String;

    move-result-object p0

    const/16 v0, 0x30

    const-string v1, "6721"

    invoke-static {v1, v0}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    invoke-interface {p1, p0, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_8a
    :goto_8a
    return-void
.end method

.method public static catchErr(Ljava/lang/Throwable;)Lorg/json/JSONObject;
    .registers 6

    :try_start_0
    new-instance v0, Lorg/json/JSONObject;

    invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V

    sget-object v1, Lcn/tongdun/android/shell/common/CollectorError;->KEY_REASON:Ljava/lang/String;

    invoke-virtual {p0}, Ljava/lang/Throwable;->getLocalizedMessage()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    sget-object v1, Lcn/tongdun/android/shell/common/CollectorError;->KEY_TYPE:Ljava/lang/String;

    invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    invoke-virtual {p0}, Ljava/lang/Throwable;->getStackTrace()[Ljava/lang/StackTraceElement;

    move-result-object p0

    const/4 v1, 0x0

    :goto_20
    array-length v2, p0

    if-ge v1, v2, :cond_46

    aget-object v2, p0, v1

    invoke-virtual {v2}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;

    move-result-object v2

    const-string v3, "7f54230e380f310c201760586f52794f7f42"

    const/16 v4, 0x4e

    invoke-static {v3, v4}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v2

    if-eqz v2, :cond_43

    sget-object v2, Lcn/tongdun/android/shell/common/CollectorError;->KEY_STACK:Ljava/lang/String;

    aget-object p0, p0, v1

    invoke-virtual {p0}, Ljava/lang/StackTraceElement;->toString()Ljava/lang/String;

    move-result-object p0

    invoke-virtual {v0, v2, p0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_42
    .catchall {:try_start_0 .. :try_end_42} :catchall_47

    goto :goto_46

    :cond_43
    add-int/lit8 v1, v1, 0x1

    goto :goto_20

    :cond_46
    :goto_46
    return-object v0

    :catchall_47
    new-instance p0, Lorg/json/JSONObject;

    invoke-direct {p0}, Lorg/json/JSONObject;-><init>()V

    return-object p0
.end method

.method public static clearError()V
    .registers 1

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    if-eqz v0, :cond_7

    invoke-interface {v0}, Ljava/util/Map;->clear()V

    :cond_7
    return-void
.end method

.method public static getErrorCode()Ljava/lang/String;
    .registers 1

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    if-eqz v0, :cond_d

    invoke-interface {v0}, Ljava/util/Map;->keySet()Ljava/util/Set;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v0

    return-object v0

    :cond_d
    const-string v0, ""

    return-object v0
.end method

.method public static getErrorMsg()Ljava/lang/String;
    .registers 2

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    if-eqz v0, :cond_2d

    invoke-interface {v0}, Ljava/util/Map;->size()I

    move-result v0

    if-gtz v0, :cond_13

    const/16 v0, 0x1a

    const-string v1, "470b"

    invoke-static {v1, v0}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    return-object v0

    :cond_13
    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-interface {v0}, Ljava/util/Map;->values()Ljava/util/Collection;

    move-result-object v0

    invoke-interface {v0}, Ljava/util/Collection;->size()I

    move-result v1

    if-gtz v1, :cond_28

    const/16 v0, 0x40

    const-string v1, "4751"

    invoke-static {v1, v0}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    return-object v0

    :cond_28
    invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object v0

    return-object v0

    :cond_2d
    const/16 v0, 0x16

    const-string v1, "4707"

    invoke-static {v1, v0}, Lcn/tongdun/android/shell/common/CollectorError;->linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public static linkxxxxx(Ljava/lang/String;I)Ljava/lang/String;
    .registers 9

    const-string v0, "0123456789abcdef"

    :try_start_2
    invoke-virtual {p0}, Ljava/lang/String;->length()I

    move-result v1

    div-int/lit8 v1, v1, 0x2

    invoke-virtual {p0}, Ljava/lang/String;->toCharArray()[C

    move-result-object p0

    new-array v2, v1, [B

    const/4 v3, 0x0

    const/4 v4, 0x0

    :goto_10
    if-ge v4, v1, :cond_2b

    mul-int/lit8 v5, v4, 0x2

    aget-char v6, p0, v5

    invoke-virtual {v0, v6}, Ljava/lang/String;->indexOf(I)I

    move-result v6

    shl-int/lit8 v6, v6, 0x4

    add-int/lit8 v5, v5, 0x1

    aget-char v5, p0, v5

    invoke-virtual {v0, v5}, Ljava/lang/String;->indexOf(I)I

    move-result v5

    or-int/2addr v5, v6

    int-to-byte v5, v5

    aput-byte v5, v2, v4

    add-int/lit8 v4, v4, 0x1

    goto :goto_10

    :cond_2b
    xor-int/lit8 p0, p1, 0x17

    int-to-byte p0, p0

    aget-byte p1, v2, v3

    xor-int/lit8 p1, p1, 0x1c

    int-to-byte p1, p1

    aput-byte p1, v2, v3

    aget-byte p1, v2, v3

    const/4 v0, 0x1

    :goto_38
    if-ge v0, v1, :cond_47

    aget-byte v3, v2, v0

    aget-byte v4, v2, v0

    xor-int/2addr p1, v4

    xor-int/2addr p1, p0

    int-to-byte p1, p1

    aput-byte p1, v2, v0

    add-int/lit8 v0, v0, 0x1

    move p1, v3

    goto :goto_38

    :cond_47
    new-instance p0, Ljava/lang/String;

    const-string/jumbo p1, "utf-8"

    invoke-direct {p0, v2, p1}, Ljava/lang/String;-><init>([BLjava/lang/String;)V
    :try_end_4f
    .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_4f} :catch_50

    return-object p0

    :catch_50
    move-exception p0

    invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V

    const-string p0, ""

    return-object p0
.end method

.method public static remove(Lcn/tongdun/android/shell/common/CollectorError$TYPE;)V
    .registers 3

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    if-eqz v0, :cond_17

    # getter for: Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code:Ljava/lang/String;
    invoke-static {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->access$000(Lcn/tongdun/android/shell/common/CollectorError$TYPE;)Ljava/lang/String;

    move-result-object v1

    invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_17

    sget-object v0, Lcn/tongdun/android/shell/common/CollectorError;->errorMap:Ljava/util/Map;

    invoke-virtual {p0}, Lcn/tongdun/android/shell/common/CollectorError$TYPE;->code()Ljava/lang/String;

    move-result-object p0

    invoke-interface {v0, p0}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;

    :cond_17
    return-void
.end method