SavedTrafficManager.smali

.class public Lcom/quickbird/sdk/internal/SavedTrafficManager;
.super Ljava/lang/Object;
.source "SavedTrafficManager.java"


# instance fields
.field private trafficList:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List",
            "<",
            "Lcom/quickbird/sdk/TrafficInfo;",
            ">;"
        }
    .end annotation
.end field


# direct methods
.method public constructor <init>()V
    .registers 2

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

    .line 25
    new-instance v0, Ljava/util/ArrayList;

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

    iput-object v0, p0, Lcom/quickbird/sdk/internal/SavedTrafficManager;->trafficList:Ljava/util/List;

    return-void
.end method


# virtual methods
.method public query(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
    .registers 23
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroid/content/Context;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ")",
            "Ljava/util/List",
            "<",
            "Lcom/quickbird/sdk/TrafficInfo;",
            ">;"
        }
    .end annotation

    .prologue
    .line 37
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v6

    .line 39
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/quickbird/sdk/internal/SavedTrafficManager;->trafficList:Ljava/util/List;

    invoke-interface {v2}, Ljava/util/List;->clear()V

    .line 42
    :try_start_b
    invoke-static/range {p1 .. p1}, Lcom/quickbird/sdk/internal/QBConfigsMgr;->getUserToken(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v2

    .line 43
    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v3

    if-eqz v3, :cond_4a

    .line 44
    sget-boolean v2, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v2, :cond_20

    .line 45
    const-string v2, "QbSdk"

    const-string v3, "Query error! Vpn unregist."

    invoke-static {v2, v3}, Lcom/quickbird/sdk/utils/QBLogger;->e(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_20
    .catch Ljava/lang/Exception; {:try_start_b .. :try_end_20} :catch_183
    .catchall {:try_start_b .. :try_end_20} :catchall_1af

    .line 47
    :cond_20
    const/4 v2, 0x0

    .line 111
    sget-boolean v3, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v3, :cond_49

    .line 112
    const-string v3, "QbSdk"

    new-instance v4, Ljava/lang/StringBuilder;

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

    const-string v5, "Query traffic used:"

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

    move-result-object v4

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v8

    sub-long v6, v8, v6

    invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v4

    const-string v5, " ms"

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

    move-result-object v4

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

    move-result-object v4

    :goto_46
    invoke-static {v3, v4}, Lcom/quickbird/sdk/utils/QBLogger;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 109
    :cond_49
    return-object v2

    .line 50
    :cond_4a
    :try_start_4a
    new-instance v3, Lorg/json/JSONObject;

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

    .line 51
    const-string v4, "token"

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

    .line 52
    invoke-static/range {p3 .. p3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-nez v2, :cond_61

    .line 53
    const-string v2, "stats_begin"

    move-object/from16 v0, p3

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

    .line 55
    :cond_61
    invoke-static/range {p4 .. p4}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-nez v2, :cond_6e

    .line 56
    const-string v2, "stats_end"

    move-object/from16 v0, p4

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

    .line 58
    :cond_6e
    invoke-static/range {p2 .. p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-nez v2, :cond_7b

    .line 59
    const-string v2, "packet_name"

    move-object/from16 v0, p2

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

    .line 62
    :cond_7b
    sget-boolean v2, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v2, :cond_8f

    .line 63
    const-string v2, "QbSdk"

    const-string v4, "Posting:https://sjws-tzapi.baidu.com/report/bsd/"

    invoke-static {v2, v4}, Lcom/quickbird/sdk/utils/QBLogger;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 64
    const-string v2, "QbSdk"

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

    move-result-object v4

    invoke-static {v2, v4}, Lcom/quickbird/sdk/utils/QBLogger;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 67
    :cond_8f
    const-string v2, "https://sjws-tzapi.baidu.com/report/bsd/"

    move-object/from16 v0, p1

    invoke-static {v0, v2, v3}, Lcom/quickbird/sdk/internal/HttpsClient;->post(Landroid/content/Context;Ljava/lang/String;Lorg/json/JSONObject;)Ljava/lang/String;

    move-result-object v2

    .line 69
    sget-boolean v3, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v3, :cond_a7

    .line 70
    const-string v3, "QbSdk"

    const-string v4, "Respond:"

    invoke-static {v3, v4}, Lcom/quickbird/sdk/utils/QBLogger;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 71
    const-string v3, "QbSdk"

    invoke-static {v3, v2}, Lcom/quickbird/sdk/utils/QBLogger;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 74
    :cond_a7
    new-instance v8, Lorg/json/JSONObject;

    invoke-direct {v8, v2}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V

    .line 75
    invoke-virtual {v8}, Lorg/json/JSONObject;->names()Lorg/json/JSONArray;

    move-result-object v9

    .line 76
    if-eqz v9, :cond_b8

    invoke-virtual {v9}, Lorg/json/JSONArray;->length()I

    move-result v2

    if-nez v2, :cond_e3

    .line 77
    :cond_b8
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/quickbird/sdk/internal/SavedTrafficManager;->trafficList:Ljava/util/List;
    :try_end_bc
    .catch Ljava/lang/Exception; {:try_start_4a .. :try_end_bc} :catch_183
    .catchall {:try_start_4a .. :try_end_bc} :catchall_1af

    .line 111
    sget-boolean v3, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v3, :cond_49

    .line 112
    const-string v3, "QbSdk"

    new-instance v4, Ljava/lang/StringBuilder;

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

    const-string v5, "Query traffic used:"

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

    move-result-object v4

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v8

    sub-long v6, v8, v6

    invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v4

    const-string v5, " ms"

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

    move-result-object v4

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

    move-result-object v4

    goto/16 :goto_46

    .line 80
    :cond_e3
    const-wide/16 v4, 0x0

    .line 82
    const/4 v2, 0x0

    move v3, v2

    :goto_e7
    :try_start_e7
    invoke-virtual {v9}, Lorg/json/JSONArray;->length()I

    move-result v2

    if-ge v3, v2, :cond_13c

    .line 83
    invoke-virtual {v9, v3}, Lorg/json/JSONArray;->getString(I)Ljava/lang/String;

    move-result-object v10

    .line 84
    invoke-virtual {v8, v10}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;

    move-result-object v11

    .line 86
    const/4 v2, 0x0

    :goto_f6
    invoke-virtual {v11}, Lorg/json/JSONArray;->length()I

    move-result v12

    if-ge v2, v12, :cond_138

    .line 87
    invoke-virtual {v11, v2}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;

    move-result-object v12

    .line 88
    new-instance v13, Lcom/quickbird/sdk/TrafficInfo;

    invoke-direct {v13}, Lcom/quickbird/sdk/TrafficInfo;-><init>()V

    .line 90
    invoke-virtual {v13, v10}, Lcom/quickbird/sdk/TrafficInfo;->setDate(Ljava/lang/String;)V

    .line 91
    const-string v14, "packet_name"

    invoke-virtual {v12, v14}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v14

    invoke-virtual {v13, v14}, Lcom/quickbird/sdk/TrafficInfo;->setPackageName(Ljava/lang/String;)V

    .line 92
    const-string v14, "bytes_after"

    invoke-virtual {v12, v14}, Lorg/json/JSONObject;->getLong(Ljava/lang/String;)J

    move-result-wide v14

    invoke-virtual {v13, v14, v15}, Lcom/quickbird/sdk/TrafficInfo;->setBytesAfter(J)V

    .line 93
    const-string v14, "bytes_before"

    invoke-virtual {v12, v14}, Lorg/json/JSONObject;->getLong(Ljava/lang/String;)J

    move-result-wide v14

    invoke-virtual {v13, v14, v15}, Lcom/quickbird/sdk/TrafficInfo;->setBytesBefore(J)V

    .line 95
    invoke-virtual {v13}, Lcom/quickbird/sdk/TrafficInfo;->getBytesBefore()J

    move-result-wide v14

    invoke-virtual {v13}, Lcom/quickbird/sdk/TrafficInfo;->getBytesAfter()J

    move-result-wide v16

    sub-long v14, v14, v16

    add-long/2addr v4, v14

    .line 97
    move-object/from16 v0, p0

    iget-object v12, v0, Lcom/quickbird/sdk/internal/SavedTrafficManager;->trafficList:Ljava/util/List;

    invoke-interface {v12, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 86
    add-int/lit8 v2, v2, 0x1

    goto :goto_f6

    .line 82
    :cond_138
    add-int/lit8 v2, v3, 0x1

    move v3, v2

    goto :goto_e7

    .line 101
    :cond_13c
    sget-boolean v2, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v2, :cond_158

    .line 102
    const-string v2, "QbSdk"

    new-instance v3, Ljava/lang/StringBuilder;

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

    const-string v8, "Saved traffic:"

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

    move-result-object v3

    invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v3

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

    move-result-object v3

    invoke-static {v2, v3}, Lcom/quickbird/sdk/utils/QBLogger;->i(Ljava/lang/String;Ljava/lang/String;)V

    .line 105
    :cond_158
    move-object/from16 v0, p0

    iget-object v2, v0, Lcom/quickbird/sdk/internal/SavedTrafficManager;->trafficList:Ljava/util/List;
    :try_end_15c
    .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_15c} :catch_183
    .catchall {:try_start_e7 .. :try_end_15c} :catchall_1af

    .line 111
    sget-boolean v3, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v3, :cond_49

    .line 112
    const-string v3, "QbSdk"

    new-instance v4, Ljava/lang/StringBuilder;

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

    const-string v5, "Query traffic used:"

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

    move-result-object v4

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v8

    sub-long v6, v8, v6

    invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v4

    const-string v5, " ms"

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

    move-result-object v4

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

    move-result-object v4

    goto/16 :goto_46

    .line 107
    :catch_183
    move-exception v2

    .line 108
    :try_start_184
    invoke-virtual {v2}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_187
    .catchall {:try_start_184 .. :try_end_187} :catchall_1af

    .line 109
    const/4 v2, 0x0

    .line 111
    sget-boolean v3, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v3, :cond_49

    .line 112
    const-string v3, "QbSdk"

    new-instance v4, Ljava/lang/StringBuilder;

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

    const-string v5, "Query traffic used:"

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

    move-result-object v4

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v8

    sub-long v6, v8, v6

    invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v4

    const-string v5, " ms"

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

    move-result-object v4

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

    move-result-object v4

    goto/16 :goto_46

    .line 111
    :catchall_1af
    move-exception v2

    sget-boolean v3, Lcom/quickbird/sdk/QuickBird;->SDK_DEBUG:Z

    if-eqz v3, :cond_1d8

    .line 112
    const-string v3, "QbSdk"

    new-instance v4, Ljava/lang/StringBuilder;

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

    const-string v5, "Query traffic used:"

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

    move-result-object v4

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v8

    sub-long v6, v8, v6

    invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v4

    const-string v5, " ms"

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

    move-result-object v4

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

    move-result-object v4

    invoke-static {v3, v4}, Lcom/quickbird/sdk/utils/QBLogger;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 111
    :cond_1d8
    throw v2
.end method