b.smali

.class public final Lcom/imo/android/imoim/newfriends/b/b;
.super Ljava/lang/Object;
.source "SourceFile"


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

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

    return-void
.end method

.method public static a()I
    .registers 9

    const-string v0, "message_read=? AND timestamp>=?"

    const-string v1, "message_read"

    const-string v2, "timestamp"

    .line 397
    filled-new-array {v1, v2}, [Ljava/lang/String;

    move-result-object v1

    const/4 v2, 0x1

    const/4 v3, 0x0

    const/4 v4, 0x0

    .line 402
    :try_start_d
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v5

    const-wide/32 v7, 0x240c8400

    sub-long/2addr v5, v7

    invoke-static {v5, v6}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;

    move-result-object v5

    const-string v6, "relationship_message"

    const/4 v7, 0x2

    new-array v7, v7, [Ljava/lang/String;

    const-string v8, "0"

    aput-object v8, v7, v3

    aput-object v5, v7, v2

    .line 403
    invoke-static {v6, v1, v0, v7}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object v4
    :try_end_28
    .catch Ljava/lang/Exception; {:try_start_d .. :try_end_28} :catch_35
    .catchall {:try_start_d .. :try_end_28} :catchall_33

    if-nez v4, :cond_2e

    .line 413
    invoke-static {v4}, Lcom/imo/android/imoim/util/ei;->a(Ljava/io/Closeable;)V

    return v3

    .line 409
    :cond_2e
    :try_start_2e
    invoke-interface {v4}, Landroid/database/Cursor;->getCount()I

    move-result v3
    :try_end_32
    .catch Ljava/lang/Exception; {:try_start_2e .. :try_end_32} :catch_35
    .catchall {:try_start_2e .. :try_end_32} :catchall_33

    goto :goto_4d

    :catchall_33
    move-exception v0

    goto :goto_51

    :catch_35
    move-exception v0

    :try_start_36
    const-string v1, "RelationshipMsgDbHelper"

    .line 411
    new-instance v5, Ljava/lang/StringBuilder;

    const-string v6, "getUnreadTotalCount: e="

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

    invoke-virtual {v0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;

    move-result-object v0

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

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

    move-result-object v0

    .line 2079
    invoke-static {v1, v0, v2}, Lcom/imo/android/imoim/util/bt;->a(Ljava/lang/String;Ljava/lang/String;Z)V
    :try_end_4d
    .catchall {:try_start_36 .. :try_end_4d} :catchall_33

    .line 413
    :goto_4d
    invoke-static {v4}, Lcom/imo/android/imoim/util/ei;->a(Ljava/io/Closeable;)V

    return v3

    :goto_51
    invoke-static {v4}, Lcom/imo/android/imoim/util/ei;->a(Ljava/io/Closeable;)V

    throw v0
.end method

.method public static a(Ljava/lang/String;)J
    .registers 8

    const-string v0, "timestamp"

    .line 135
    filled-new-array {v0}, [Ljava/lang/String;

    move-result-object v2

    const-string v0, "rel_id"

    const-string v1, "message_type"

    const-string v3, "message_read"

    filled-new-array {v0, v1, v3}, [Ljava/lang/String;

    move-result-object v0

    .line 138
    invoke-static {v0}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    const/4 v0, 0x3

    new-array v4, v0, [Ljava/lang/String;

    const/4 v0, 0x0

    aput-object p0, v4, v0

    sget-object p0, Lcom/imo/android/imoim/data/l$b;->RECEIVED:Lcom/imo/android/imoim/data/l$b;

    .line 140
    invoke-virtual {p0}, Lcom/imo/android/imoim/data/l$b;->toStr()Ljava/lang/String;

    move-result-object p0

    const/4 v1, 0x1

    aput-object p0, v4, v1

    const/4 p0, 0x2

    const-string v1, "0"

    aput-object v1, v4, p0

    const-string v5, "timestamp ASC"

    const-string v1, "relationship_message"

    const/4 v6, 0x1

    .line 136
    invoke-static/range {v1 .. v6}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;I)Landroid/database/Cursor;

    move-result-object p0

    .line 143
    invoke-interface {p0}, Landroid/database/Cursor;->moveToNext()Z

    move-result v1

    if-eqz v1, :cond_3c

    .line 144
    invoke-interface {p0, v0}, Landroid/database/Cursor;->getLong(I)J

    move-result-wide v0

    goto :goto_43

    .line 146
    :cond_3c
    invoke-static {}, Lcom/imo/android/imoim/newfriends/b/b;->c()J

    move-result-wide v0

    const-wide/16 v2, 0x1

    add-long/2addr v0, v2

    .line 148
    :goto_43
    invoke-interface {p0}, Landroid/database/Cursor;->close()V

    return-wide v0
.end method

.method public static a(Ljava/lang/String;J)Landroid/database/Cursor;
    .registers 12

    .line 117
    new-instance v0, Ljava/lang/StringBuilder;

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

    const-string v1, "rel_id"

    filled-new-array {v1}, [Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

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

    const-string v1, " AND timestamp>=?"

    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 v4

    const/4 v0, 0x2

    new-array v5, v0, [Ljava/lang/String;

    const/4 v0, 0x0

    aput-object p0, v5, v0

    .line 120
    invoke-static {p1, p2}, Ljava/lang/Long;->toString(J)Ljava/lang/String;

    move-result-object p0

    const/4 p1, 0x1

    aput-object p0, v5, p1

    const-string v8, "timestamp ASC"

    const-string v2, "relationship_message"

    const/4 v3, 0x0

    const/4 v6, 0x0

    const/4 v7, 0x0

    .line 119
    invoke-static/range {v2 .. v8}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object p0

    return-object p0
.end method

.method public static a([Ljava/lang/String;)Ljava/lang/String;
    .registers 6

    .line 335
    new-instance v0, Ljava/lang/StringBuilder;

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

    .line 337
    array-length v1, p0

    const/4 v2, 0x0

    const/4 v3, 0x0

    :goto_8
    if-ge v2, v1, :cond_22

    aget-object v4, p0, v2

    .line 338
    invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    add-int/lit8 v3, v3, 0x1

    .line 340
    array-length v4, p0

    if-ge v3, v4, :cond_1a

    const-string v4, "=? AND "

    .line 341
    invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    goto :goto_1f

    :cond_1a
    const-string v4, "=? "

    .line 343
    invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    :goto_1f
    add-int/lit8 v2, v2, 0x1

    goto :goto_8

    .line 347
    :cond_22
    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p0

    return-object p0
.end method

.method public static a(Lcom/imo/android/imoim/data/message/n;)V
    .registers 5
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/lang/RuntimeException;
        }
    .end annotation

    const-string v0, "taskid"

    .line 80
    :try_start_2
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->d:Lcom/imo/android/imoim/data/message/imdata/b;

    instance-of v1, v1, Lcom/imo/android/imoim/data/message/imdata/j;

    if-eqz v1, :cond_21

    .line 81
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->c:Lorg/json/JSONObject;

    invoke-static {v0, v1}, Lcom/imo/android/imoim/util/cg;->a(Ljava/lang/String;Lorg/json/JSONObject;)Ljava/lang/String;

    move-result-object v1

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

    move-result v1

    if-eqz v1, :cond_21

    .line 83
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->c:Lorg/json/JSONObject;

    iget-object v2, p0, Lcom/imo/android/imoim/data/message/n;->o:Ljava/lang/String;

    iget-boolean v3, p0, Lcom/imo/android/imoim/data/message/n;->h:Z

    invoke-static {v2, v3}, Lcom/imo/android/imoim/filetransfer/c/a;->a(Ljava/lang/String;Z)Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v0, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_21
    .catch Lorg/json/JSONException; {:try_start_2 .. :try_end_21} :catch_21

    .line 90
    :catch_21
    :cond_21
    invoke-static {p0}, Lcom/imo/android/imoim/newfriends/b/b;->b(Lcom/imo/android/imoim/data/message/n;)Landroid/content/ContentValues;

    move-result-object p0

    const/4 v0, 0x1

    const-string v1, "relationship_message"

    const-string v2, "RelationshipMsgDbHelper"

    .line 91
    invoke-static {v1, p0, v0, v2}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;Landroid/content/ContentValues;ZLjava/lang/String;)J

    return-void
.end method

.method public static a(Ljava/lang/String;JJLcom/imo/android/imoim/data/message/imdata/b;)V
    .registers 8

    const/4 v0, 0x3

    new-array v0, v0, [Ljava/lang/String;

    const/4 v1, 0x0

    aput-object p0, v0, v1

    .line 368
    invoke-static {p1, p2}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;

    move-result-object p0

    const/4 p1, 0x1

    aput-object p0, v0, p1

    invoke-static {p3, p4}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;

    move-result-object p0

    const/4 p1, 0x2

    aput-object p0, v0, p1

    .line 369
    new-instance p0, Landroid/content/ContentValues;

    invoke-direct {p0}, Landroid/content/ContentValues;-><init>()V

    const/4 p1, 0x0

    if-nez p5, :cond_1e

    move-object p2, p1

    goto :goto_26

    .line 371
    :cond_1e
    invoke-virtual {p5}, Lcom/imo/android/imoim/data/message/imdata/b;->b()Lcom/imo/android/imoim/data/message/imdata/b$a;

    move-result-object p2

    invoke-virtual {p2}, Lcom/imo/android/imoim/data/message/imdata/b$a;->getProto()Ljava/lang/String;

    move-result-object p2

    :goto_26
    const-string p3, "imdata_type"

    .line 372
    invoke-virtual {p0, p3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    if-nez p5, :cond_2f

    move-object p2, p1

    goto :goto_33

    .line 1299
    :cond_2f
    invoke-virtual {p5, v1}, Lcom/imo/android/imoim/data/message/imdata/b;->a(Z)Lorg/json/JSONObject;

    move-result-object p2

    :goto_33
    if-nez p2, :cond_36

    goto :goto_3a

    .line 375
    :cond_36
    invoke-virtual {p2}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object p1

    :goto_3a
    const-string p3, "imdata"

    invoke-virtual {p0, p3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    const-string p1, "RelationshipMsgDbHelper"

    const-string p3, "rel_id=? AND timestamp=? AND msg_seq=?"

    const-string p4, "relationship_message"

    .line 378
    invoke-static {p4, p0, p3, v0, p1}, Lcom/imo/android/imoim/util/at;->b(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)I

    move-result p0

    .line 381
    new-instance p3, Ljava/lang/StringBuilder;

    const-string p4, "updateImData "

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

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

    const-string p0, " "

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

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

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

    move-result-object p0

    .line 2071
    invoke-static {p1, p0}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V

    return-void
.end method

.method public static a(Ljava/lang/String;Lcom/imo/android/imoim/data/message/imdata/b;)V
    .registers 9

    if-eqz p0, :cond_33

    const-string v0, ""

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

    move-result v0

    if-eqz v0, :cond_b

    goto :goto_33

    :cond_b
    const-string v0, "#"

    .line 356
    invoke-virtual {p0, v0}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object p0

    .line 357
    array-length v0, p0

    const/4 v1, 0x3

    if-ge v0, v1, :cond_16

    return-void

    :cond_16
    const/4 v0, 0x0

    .line 359
    aget-object v1, p0, v0

    const/4 v0, 0x1

    .line 360
    aget-object v0, p0, v0

    const/4 v2, 0x2

    .line 361
    aget-object p0, p0, v2

    .line 363
    invoke-static {v0}, Ljava/lang/Long;->valueOf(Ljava/lang/String;)Ljava/lang/Long;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Long;->longValue()J

    move-result-wide v2

    invoke-static {p0}, Ljava/lang/Long;->valueOf(Ljava/lang/String;)Ljava/lang/Long;

    move-result-object p0

    invoke-virtual {p0}, Ljava/lang/Long;->longValue()J

    move-result-wide v4

    move-object v6, p1

    invoke-static/range {v1 .. v6}, Lcom/imo/android/imoim/newfriends/b/b;->a(Ljava/lang/String;JJLcom/imo/android/imoim/data/message/imdata/b;)V

    :cond_33
    :goto_33
    return-void
.end method

.method public static a(Ljava/util/List;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Lcom/imo/android/imoim/data/message/n;",
            ">;)V"
        }
    .end annotation

    .line 107
    invoke-interface {p0}, Ljava/util/List;->size()I

    move-result v0

    new-array v0, v0, [Landroid/content/ContentValues;

    .line 108
    invoke-interface {p0}, Ljava/util/List;->size()I

    move-result v1

    const/4 v2, 0x0

    :goto_b
    if-ge v2, v1, :cond_1c

    .line 109
    invoke-interface {p0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lcom/imo/android/imoim/data/message/n;

    invoke-static {v3}, Lcom/imo/android/imoim/newfriends/b/b;->b(Lcom/imo/android/imoim/data/message/n;)Landroid/content/ContentValues;

    move-result-object v3

    aput-object v3, v0, v2

    add-int/lit8 v2, v2, 0x1

    goto :goto_b

    :cond_1c
    const-string p0, "relationship_message"

    const-string v1, "RelationshipMsgDbHelper"

    .line 111
    invoke-static {p0, v0, v1}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Landroid/content/ContentValues;Ljava/lang/String;)I

    return-void
.end method

.method public static a(Ljava/lang/String;JJ)Z
    .registers 22

    move-object/from16 v0, p0

    move-wide/from16 v1, p1

    move-wide/from16 v3, p3

    const-string v5, " to="

    const-string v6, "relationship_message"

    const-string v7, "RelationshipMsgDbHelper"

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

    move-result v8

    const/4 v9, 0x0

    if-eqz v8, :cond_14

    return v9

    :cond_14
    const-string v8, "rel_id=? AND timestamp=? AND msg_seq=?"

    const-string v10, "#"

    .line 470
    invoke-virtual {v0, v10}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object v10

    .line 471
    array-length v11, v10

    const/4 v12, 0x3

    if-ge v11, v12, :cond_21

    return v9

    .line 473
    :cond_21
    aget-object v11, v10, v9

    const/4 v13, 0x1

    .line 474
    aget-object v14, v10, v13

    const/4 v15, 0x2

    .line 475
    aget-object v10, v10, v15

    new-array v12, v12, [Ljava/lang/String;

    aput-object v11, v12, v9

    aput-object v14, v12, v13

    aput-object v10, v12, v15

    .line 478
    new-instance v10, Landroid/content/ContentValues;

    invoke-direct {v10}, Landroid/content/ContentValues;-><init>()V

    const-wide/16 v14, 0x0

    cmp-long v16, v1, v14

    if-ltz v16, :cond_45

    .line 480
    invoke-static/range {p1 .. p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v9

    const-string v13, "timestamp"

    invoke-virtual {v10, v13, v9}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V

    :cond_45
    cmp-long v9, v3, v14

    if-ltz v9, :cond_52

    .line 483
    invoke-static/range {p3 .. p4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;

    move-result-object v9

    const-string v13, "msg_seq"

    invoke-virtual {v10, v13, v9}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V

    .line 485
    :cond_52
    sget-object v9, Lcom/imo/android/imoim/data/l$a;->ACKED:Lcom/imo/android/imoim/data/l$a;

    invoke-virtual {v9}, Lcom/imo/android/imoim/data/l$a;->toInt()I

    move-result v9

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

    move-result-object v9

    const-string v13, "message_state"

    invoke-virtual {v10, v13, v9}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V

    .line 488
    :try_start_61
    invoke-static {v6, v10, v8, v12, v7}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)I

    move-result v9

    if-gtz v9, :cond_8a

    .line 492
    new-instance v10, Ljava/lang/StringBuilder;

    const-string v13, "updateAckAndTs failed! result="

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

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

    const-string v13, " from="

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

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

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

    invoke-static {v11, v1, v2, v3, v4}, Lcom/imo/android/imoim/util/ei;->b(Ljava/lang/String;JJ)Ljava/lang/String;

    move-result-object v13

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

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

    move-result-object v10

    .line 3071
    invoke-static {v7, v10}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V
    :try_end_8a
    .catch Ljava/lang/RuntimeException; {:try_start_61 .. :try_end_8a} :catch_90

    :cond_8a
    if-lez v9, :cond_8e

    const/4 v0, 0x1

    return v0

    :cond_8e
    const/4 v0, 0x0

    return v0

    :catch_90
    nop

    .line 497
    invoke-static {v11, v1, v2, v3, v4}, Lcom/imo/android/imoim/util/ei;->b(Ljava/lang/String;JJ)Ljava/lang/String;

    move-result-object v1

    .line 499
    invoke-static/range {p0 .. p0}, Lcom/imo/android/imoim/newfriends/b/b;->d(Ljava/lang/String;)Lcom/imo/android/imoim/data/message/n;

    move-result-object v2

    if-eqz v2, :cond_cc

    .line 500
    iget-object v3, v2, Lcom/imo/android/imoim/data/message/n;->d:Lcom/imo/android/imoim/data/message/imdata/b;

    if-eqz v3, :cond_cc

    .line 503
    new-instance v3, Ljava/lang/StringBuilder;

    const-string v4, "move imdata from "

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

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

    const-string v4, " to "

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

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

    const-string v4, "; imdata="

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

    iget-object v4, v2, Lcom/imo/android/imoim/data/message/n;->d:Lcom/imo/android/imoim/data/message/imdata/b;

    const/4 v9, 0x0

    .line 3299
    invoke-virtual {v4, v9}, Lcom/imo/android/imoim/data/message/imdata/b;->a(Z)Lorg/json/JSONObject;

    move-result-object v4

    .line 503
    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

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

    move-result-object v3

    .line 4071
    invoke-static {v7, v3}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 504
    iget-object v2, v2, Lcom/imo/android/imoim/data/message/n;->d:Lcom/imo/android/imoim/data/message/imdata/b;

    invoke-static {v1, v2}, Lcom/imo/android/imoim/newfriends/b/b;->a(Ljava/lang/String;Lcom/imo/android/imoim/data/message/imdata/b;)V

    .line 507
    :cond_cc
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "updateAckAndTs failed! from="

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

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

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

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

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

    move-result-object v0

    .line 5071
    invoke-static {v7, v0}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V

    const/4 v0, 0x0

    .line 508
    invoke-static {v6, v8, v12, v0}, Lcom/imo/android/imoim/util/at;->b(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Z)I

    return v0
.end method

.method public static b(Ljava/lang/String;)J
    .registers 8

    const-string v0, "rel_id"

    .line 196
    filled-new-array {v0}, [Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    const/4 v0, 0x1

    new-array v4, v0, [Ljava/lang/String;

    const/4 v0, 0x0

    aput-object p0, v4, v0

    const-string p0, "msg_seq"

    .line 199
    filled-new-array {p0}, [Ljava/lang/String;

    move-result-object v2

    const-string v5, "timestamp DESC"

    const-string v1, "relationship_message"

    const/4 v6, 0x1

    invoke-static/range {v1 .. v6}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;I)Landroid/database/Cursor;

    move-result-object v0

    const-wide/16 v1, -0x1

    if-eqz v0, :cond_34

    .line 204
    invoke-interface {v0}, Landroid/database/Cursor;->moveToFirst()Z

    move-result v3

    if-eqz v3, :cond_31

    .line 205
    invoke-interface {v0, p0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I

    move-result p0

    invoke-interface {v0, p0}, Landroid/database/Cursor;->getLong(I)J

    move-result-wide v1

    .line 207
    :cond_31
    invoke-interface {v0}, Landroid/database/Cursor;->close()V

    :cond_34
    return-wide v1
.end method

.method private static b(Lcom/imo/android/imoim/data/message/n;)Landroid/content/ContentValues;
    .registers 4

    .line 45
    new-instance v0, Landroid/content/ContentValues;

    invoke-direct {v0}, Landroid/content/ContentValues;-><init>()V

    .line 47
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->o:Ljava/lang/String;

    const-string v2, "rel_id"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 48
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->l:Ljava/lang/String;

    const-string v2, "imdata_type"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 49
    iget-wide v1, p0, Lcom/imo/android/imoim/data/message/n;->k:J

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

    move-result-object v1

    const-string v2, "msg_seq"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V

    .line 50
    iget-boolean v1, p0, Lcom/imo/android/imoim/data/message/n;->i:Z

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

    move-result-object v1

    const-string v2, "is_silent"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V

    .line 51
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->b:Ljava/lang/String;

    const-string v2, "last_message"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 52
    iget-wide v1, p0, Lcom/imo/android/imoim/data/message/n;->a:J

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

    move-result-object v1

    const-string v2, "timestamp"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V

    .line 53
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->e:Lcom/imo/android/imoim/data/l$b;

    invoke-virtual {v1}, Lcom/imo/android/imoim/data/l$b;->toInt()I

    move-result v1

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

    move-result-object v1

    const-string v2, "message_type"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V

    .line 54
    iget-boolean v1, p0, Lcom/imo/android/imoim/data/message/n;->j:Z

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

    move-result-object v1

    const-string v2, "message_read"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V

    .line 55
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->f:Lcom/imo/android/imoim/data/l$a;

    invoke-virtual {v1}, Lcom/imo/android/imoim/data/l$a;->toInt()I

    move-result v1

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

    move-result-object v1

    const-string v2, "message_state"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V

    .line 57
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->m:Lorg/json/JSONObject;

    if-eqz v1, :cond_73

    .line 58
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->m:Lorg/json/JSONObject;

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

    move-result-object v1

    const-string v2, "author"

    invoke-virtual {v0, v2, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 60
    :cond_73
    iget-object v1, p0, Lcom/imo/android/imoim/data/message/n;->c:Lorg/json/JSONObject;

    if-eqz v1, :cond_82

    .line 61
    iget-object p0, p0, Lcom/imo/android/imoim/data/message/n;->c:Lorg/json/JSONObject;

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

    move-result-object p0

    const-string v1, "imdata"

    invoke-virtual {v0, v1, p0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    :cond_82
    return-object v0
.end method

.method public static b(Ljava/lang/String;J)Landroid/database/Cursor;
    .registers 12

    .line 126
    new-instance v0, Ljava/lang/StringBuilder;

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

    const-string v1, "rel_id"

    filled-new-array {v1}, [Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

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

    const-string v1, " AND timestamp<?"

    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 v4

    const/4 v0, 0x2

    new-array v5, v0, [Ljava/lang/String;

    const/4 v0, 0x0

    aput-object p0, v5, v0

    .line 129
    invoke-static {p1, p2}, Ljava/lang/Long;->toString(J)Ljava/lang/String;

    move-result-object p0

    const/4 p1, 0x1

    aput-object p0, v5, p1

    const-string v8, "timestamp ASC"

    const-string v2, "relationship_message"

    const/4 v3, 0x0

    const/4 v6, 0x0

    const/4 v7, 0x0

    .line 128
    invoke-static/range {v2 .. v8}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object p0

    return-object p0
.end method

.method public static b()V
    .registers 3

    const/4 v0, 0x0

    const-string v1, "relationship_message"

    const/4 v2, 0x0

    .line 516
    invoke-static {v1, v0, v0, v2}, Lcom/imo/android/imoim/util/at;->b(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Z)I

    return-void
.end method

.method private static c()J
    .registers 7

    const/4 v0, 0x0

    new-array v0, v0, [Ljava/lang/String;

    .line 174
    invoke-static {v0}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    const-string v0, "timestamp"

    .line 181
    filled-new-array {v0}, [Ljava/lang/String;

    move-result-object v2

    const-string v5, "timestamp DESC"

    const-string v1, "relationship_message"

    const/4 v4, 0x0

    const/4 v6, 0x1

    invoke-static/range {v1 .. v6}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;I)Landroid/database/Cursor;

    move-result-object v1

    const-wide/16 v2, -0x1

    if-eqz v1, :cond_2c

    .line 186
    invoke-interface {v1}, Landroid/database/Cursor;->moveToFirst()Z

    move-result v4

    if-eqz v4, :cond_29

    .line 187
    invoke-interface {v1, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I

    move-result v0

    invoke-interface {v1, v0}, Landroid/database/Cursor;->getLong(I)J

    move-result-wide v2

    .line 189
    :cond_29
    invoke-interface {v1}, Landroid/database/Cursor;->close()V

    :cond_2c
    return-wide v2
.end method

.method public static c(Ljava/lang/String;)Lcom/imo/android/imoim/data/message/n;
    .registers 11

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

    move-result v0

    const/4 v1, 0x0

    if-nez v0, :cond_1a

    const-string v0, "rel_id"

    .line 219
    filled-new-array {v0}, [Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const/4 v2, 0x1

    new-array v2, v2, [Ljava/lang/String;

    const/4 v3, 0x0

    aput-object p0, v2, v3

    move-object v6, v0

    move-object v7, v2

    goto :goto_1c

    :cond_1a
    move-object v6, v1

    move-object v7, v6

    :goto_1c
    const/4 v5, 0x0

    const/4 v9, 0x1

    const-string v8, "timestamp DESC"

    const-string v4, "relationship_message"

    .line 224
    invoke-static/range {v4 .. v9}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;I)Landroid/database/Cursor;

    move-result-object p0

    if-eqz p0, :cond_39

    .line 229
    invoke-interface {p0}, Landroid/database/Cursor;->moveToFirst()Z

    move-result v0

    if-eqz v0, :cond_36

    const/4 v0, 0x2

    .line 230
    invoke-static {v0, p0}, Lcom/imo/android/imoim/data/message/m;->a(ILandroid/database/Cursor;)Lcom/imo/android/imoim/data/message/k;

    move-result-object v0

    check-cast v0, Lcom/imo/android/imoim/data/message/n;

    move-object v1, v0

    .line 232
    :cond_36
    invoke-interface {p0}, Landroid/database/Cursor;->close()V

    :cond_39
    return-object v1
.end method

.method public static c(Ljava/lang/String;J)V
    .registers 7

    .line 422
    new-instance v0, Landroid/content/ContentValues;

    invoke-direct {v0}, Landroid/content/ContentValues;-><init>()V

    const/4 v1, 0x1

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

    move-result-object v2

    const-string v3, "message_read"

    invoke-virtual {v0, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V

    const/4 v2, 0x2

    new-array v2, v2, [Ljava/lang/String;

    const/4 v3, 0x0

    aput-object p0, v2, v3

    .line 425
    invoke-static {p1, p2}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;

    move-result-object p0

    aput-object p0, v2, v1

    const-string p0, "rel_id=? AND msg_seq<=?"

    const-string p1, "relationship_message"

    const-string p2, "RelationshipMsgDbHelper"

    .line 424
    invoke-static {p1, v0, p0, v2, p2}, Lcom/imo/android/imoim/util/at;->b(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)I

    return-void
.end method

.method public static d(Ljava/lang/String;)Lcom/imo/android/imoim/data/message/n;
    .registers 15

    const/4 v0, 0x0

    if-eqz p0, :cond_55

    const-string v1, ""

    .line 261
    invoke-virtual {v1, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v1

    if-eqz v1, :cond_c

    goto :goto_55

    :cond_c
    const-string v1, "#"

    .line 265
    invoke-virtual {p0, v1}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object p0

    .line 266
    array-length v1, p0

    const/4 v2, 0x3

    if-ge v1, v2, :cond_17

    return-object v0

    :cond_17
    const/4 v1, 0x0

    .line 268
    aget-object v3, p0, v1

    const/4 v4, 0x1

    .line 269
    aget-object v5, p0, v4

    const/4 v6, 0x2

    .line 270
    aget-object p0, p0, v6

    const-string v7, "rel_id"

    const-string v8, "timestamp"

    const-string v9, "msg_seq"

    .line 272
    filled-new-array {v7, v8, v9}, [Ljava/lang/String;

    move-result-object v7

    invoke-static {v7}, Lcom/imo/android/imoim/newfriends/b/b;->a([Ljava/lang/String;)Ljava/lang/String;

    move-result-object v10

    new-array v11, v2, [Ljava/lang/String;

    aput-object v3, v11, v1

    aput-object v5, v11, v4

    aput-object p0, v11, v6

    const/4 v9, 0x0

    const/4 v13, 0x1

    const-string v12, "timestamp DESC"

    const-string v8, "relationship_message"

    .line 277
    invoke-static/range {v8 .. v13}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;I)Landroid/database/Cursor;

    move-result-object p0

    if-eqz p0, :cond_55

    .line 281
    invoke-interface {p0}, Landroid/database/Cursor;->moveToFirst()Z

    move-result v1

    if-eqz v1, :cond_52

    .line 282
    invoke-static {v6, p0}, Lcom/imo/android/imoim/data/message/m;->a(ILandroid/database/Cursor;)Lcom/imo/android/imoim/data/message/k;

    move-result-object v0

    check-cast v0, Lcom/imo/android/imoim/data/message/n;

    .line 283
    invoke-interface {p0}, Landroid/database/Cursor;->close()V

    return-object v0

    .line 286
    :cond_52
    invoke-interface {p0}, Landroid/database/Cursor;->close()V

    :cond_55
    :goto_55
    return-object v0
.end method

.method public static e(Ljava/lang/String;)I
    .registers 4

    const-string v0, "rel_id"

    const-string v1, "message_read"

    .line 387
    filled-new-array {v0, v1}, [Ljava/lang/String;

    move-result-object v0

    const/4 v1, 0x2

    new-array v1, v1, [Ljava/lang/String;

    const/4 v2, 0x0

    aput-object p0, v1, v2

    const/4 p0, 0x1

    const-string v2, "0"

    aput-object v2, v1, p0

    const-string p0, "rel_id=? AND message_read=?"

    const-string v2, "relationship_message"

    .line 388
    invoke-static {v2, v0, p0, v1}, Lcom/imo/android/imoim/util/at;->a(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object p0

    .line 390
    invoke-interface {p0}, Landroid/database/Cursor;->getCount()I

    move-result v0

    .line 391
    invoke-interface {p0}, Landroid/database/Cursor;->close()V

    return v0
.end method