ConnectStatUnit.smali

.class public Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;
.super Ljava/lang/Object;
.source "SourceFile"


# instance fields
.field public connReason:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "connReason"
    .end annotation
.end field

.field public connectAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "connectAt"
    .end annotation
.end field

.field public disconnect:Z
    .annotation runtime Lcom/google/gson/a/e;
        a = "disconnect"
    .end annotation
.end field

.field public endAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "endAt"
    .end annotation
.end field

.field public failAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "failAt"
    .end annotation
.end field

.field public failReason:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "failReason"
    .end annotation
.end field

.field public flag:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "flag"
    .end annotation
.end field

.field public getNameChannelAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "getNameChannelAt"
    .end annotation
.end field

.field public ip:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "ip"
    .end annotation
.end field

.field public isGcm:Z
    .annotation runtime Lcom/google/gson/a/e;
        a = "isGcm"
    .end annotation
.end field

.field public isTls:Z
    .annotation runtime Lcom/google/gson/a/e;
        a = "isTls"
    .end annotation
.end field

.field public key:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "key"
    .end annotation
.end field

.field public port:I
    .annotation runtime Lcom/google/gson/a/e;
        a = "port"
    .end annotation
.end field

.field public source:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "source"
    .end annotation
.end field

.field public startConnectAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "startConnectAt"
    .end annotation
.end field

.field public success:Z
    .annotation runtime Lcom/google/gson/a/e;
        a = "success"
    .end annotation
.end field

.field public tcpConnectSucAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "tcpConnectSucAt"
    .end annotation
.end field

.field public tlsVerifyAt:J
    .annotation runtime Lcom/google/gson/a/e;
        a = "tlsVerifyAt"
    .end annotation
.end field

.field public type:Ljava/lang/String;
    .annotation runtime Lcom/google/gson/a/e;
        a = "type"
    .end annotation
.end field


# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IZZLjava/lang/String;)V
    .registers 10

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

    const-string v0, ""

    .line 14
    iput-object v0, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->key:Ljava/lang/String;

    const/4 v1, 0x0

    .line 20
    iput-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->isGcm:Z

    .line 22
    iput-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->success:Z

    .line 24
    iput-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->disconnect:Z

    .line 26
    iput-object v0, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->connReason:Ljava/lang/String;

    .line 28
    iput-object v0, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->failReason:Ljava/lang/String;

    .line 54
    iput-object p1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->source:Ljava/lang/String;

    .line 55
    iput-object p3, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->ip:Ljava/lang/String;

    .line 56
    iput p4, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->port:I

    .line 57
    iput-boolean p5, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->isGcm:Z

    .line 58
    iput-object p7, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->flag:Ljava/lang/String;

    .line 59
    iput-boolean p6, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->isTls:Z

    .line 60
    new-instance p1, Ljava/lang/StringBuilder;

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

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

    const-string p3, ":"

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

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

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

    move-result-object p1

    iput-object p1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->key:Ljava/lang/String;

    .line 61
    iput-object p2, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->type:Ljava/lang/String;

    return-void
.end method

.method private getTimeSection(J)Ljava/lang/String;
    .registers 6

    const-wide/16 v0, 0x0

    cmp-long v2, p1, v0

    if-ltz v2, :cond_f

    const-wide/16 v0, 0x1f4

    cmp-long v2, p1, v0

    if-gtz v2, :cond_f

    const-string p1, "a"

    return-object p1

    :cond_f
    const-wide/16 v0, 0x3e8

    cmp-long v2, p1, v0

    if-gtz v2, :cond_18

    const-string p1, "b"

    return-object p1

    :cond_18
    const-wide/16 v0, 0xbb8

    cmp-long v2, p1, v0

    if-gtz v2, :cond_21

    const-string p1, "c"

    return-object p1

    :cond_21
    const-wide/16 v0, 0x1388

    cmp-long v2, p1, v0

    if-gtz v2, :cond_2a

    const-string p1, "d"

    return-object p1

    :cond_2a
    const-wide/16 v0, 0x4e20

    cmp-long v2, p1, v0

    if-gtz v2, :cond_33

    const-string p1, "e"

    return-object p1

    :cond_33
    const-string p1, "f"

    return-object p1
.end method

.method private source2Type(Ljava/lang/String;)I
    .registers 4

    const-string v0, "dispatcher"

    .line 137
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    const/4 v1, 0x6

    if-eqz v0, :cond_b

    const/4 v1, 0x0

    goto :goto_43

    :cond_b
    const-string v0, "warpy"

    .line 139
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_15

    const/4 v1, 0x1

    goto :goto_43

    :cond_15
    const-string v0, "amazon"

    .line 141
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_1f

    const/4 v1, 0x2

    goto :goto_43

    :cond_1f
    const-string v0, "google"

    .line 143
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_29

    const/4 v1, 0x3

    goto :goto_43

    :cond_29
    const-string v0, "gcm"

    .line 145
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_33

    const/4 v1, 0x4

    goto :goto_43

    :cond_33
    const-string v0, "azure"

    .line 147
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_3d

    const/4 v1, 0x5

    goto :goto_43

    :cond_3d
    const-string v0, "local"

    .line 149
    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p1

    :goto_43
    return v1
.end method


# virtual methods
.method public toLogMap()Ljava/util/Map;
    .registers 9
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/Object;",
            ">;"
        }
    .end annotation

    .line 65
    new-instance v0, Ljava/util/HashMap;

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

    .line 66
    iget-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->isGcm:Z

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    const-string v2, "gcm"

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

    .line 67
    iget-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->success:Z

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    const-string v3, "suc"

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

    .line 68
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->connReason:Ljava/lang/String;

    const-string v3, "r"

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

    .line 69
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->failReason:Ljava/lang/String;

    const-string v3, "fr"

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

    .line 70
    iget-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->disconnect:Z

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    const-string v3, "disconnect"

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

    .line 71
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->type:Ljava/lang/String;

    const-string v3, "type"

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

    .line 72
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->flag:Ljava/lang/String;

    invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    const-string v3, "tls"

    if-nez v1, :cond_5d

    iget-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->isTls:Z

    if-eqz v1, :cond_5d

    .line 73
    new-instance v1, Ljava/lang/StringBuilder;

    const-string v4, "faster.tls."

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

    iget-object v4, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->flag:Ljava/lang/String;

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

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

    move-result-object v1

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

    goto :goto_6a

    .line 74
    :cond_5d
    iget-boolean v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->isGcm:Z

    if-eqz v1, :cond_65

    .line 75
    invoke-interface {v0, v3, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_6a

    :cond_65
    const-string v1, "faster.default"

    .line 77
    invoke-interface {v0, v3, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 80
    :goto_6a
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->source:Ljava/lang/String;

    invoke-direct {p0, v1}, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->source2Type(Ljava/lang/String;)I

    move-result v1

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    const-string v3, "s"

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

    .line 81
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->ip:Ljava/lang/String;

    invoke-virtual {v2, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v1

    const-string v2, "ip"

    if-eqz v1, :cond_89

    const-string v1, "127.0.0.1"

    .line 82
    invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    goto :goto_8e

    .line 84
    :cond_89
    iget-object v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->ip:Ljava/lang/String;

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

    .line 87
    :goto_8e
    iget v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->port:I

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    const-string v2, "p"

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

    .line 89
    iget-wide v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->getNameChannelAt:J

    const-wide/16 v3, 0x0

    cmp-long v5, v1, v3

    if-lez v5, :cond_be

    iget-wide v5, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->endAt:J

    cmp-long v7, v5, v3

    if-lez v7, :cond_be

    sub-long/2addr v5, v1

    cmp-long v1, v5, v3

    if-lez v1, :cond_be

    .line 92
    invoke-static {v5, v6}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v1

    const-string v2, "ft"

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

    .line 93
    invoke-direct {p0, v5, v6}, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->getTimeSection(J)Ljava/lang/String;

    move-result-object v1

    const-string v2, "fts"

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

    .line 97
    :cond_be
    iget-wide v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->tcpConnectSucAt:J

    cmp-long v5, v1, v3

    if-lez v5, :cond_d9

    .line 98
    iget-wide v5, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->startConnectAt:J

    sub-long/2addr v1, v5

    .line 99
    invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v5

    const-string v6, "ct"

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

    .line 100
    invoke-direct {p0, v1, v2}, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->getTimeSection(J)Ljava/lang/String;

    move-result-object v1

    const-string v2, "cts"

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

    .line 103
    :cond_d9
    iget-wide v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->getNameChannelAt:J

    cmp-long v5, v1, v3

    if-lez v5, :cond_fa

    .line 104
    iget-wide v5, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->tcpConnectSucAt:J

    cmp-long v7, v5, v3

    if-nez v7, :cond_e7

    iget-wide v5, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->startConnectAt:J

    :cond_e7
    sub-long/2addr v1, v5

    .line 105
    invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v5

    const-string v6, "gt"

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

    .line 106
    invoke-direct {p0, v1, v2}, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->getTimeSection(J)Ljava/lang/String;

    move-result-object v1

    const-string v2, "gts"

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

    .line 109
    :cond_fa
    iget-wide v1, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->tlsVerifyAt:J

    cmp-long v5, v1, v3

    if-lez v5, :cond_115

    .line 110
    iget-wide v3, p0, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->tcpConnectSucAt:J

    sub-long/2addr v1, v3

    .line 111
    invoke-static {v1, v2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v3

    const-string v4, "tt"

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

    .line 112
    invoke-direct {p0, v1, v2}, Lcom/imo/android/imoim/network/stat/connect/ConnectStatUnit;->getTimeSection(J)Ljava/lang/String;

    move-result-object v1

    const-string v2, "tts"

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

    :cond_115
    return-object v0
.end method