DraftHelper.smali
.class public Lio/rong/imkit/mention/DraftHelper;
.super Ljava/lang/Object;
.source "DraftHelper.java"
# static fields
.field private static final CONTENT:Ljava/lang/String; = "content"
.field private static final MENTION:Ljava/lang/String; = "mention"
# instance fields
.field private content:Ljava/lang/String;
.field private mentionBlocks:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lio/rong/imkit/mention/MentionBlock;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/lang/String;)V
.registers 4
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_25
.line 3
:try_start_9
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0, p1}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
const-string v1, "content"
.line 4
invoke-virtual {v0, v1}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
iput-object v1, p0, Lio/rong/imkit/mention/DraftHelper;->content:Ljava/lang/String;
const-string v1, "mention"
.line 5
invoke-virtual {v0, v1}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 6
invoke-direct {p0, v0}, Lio/rong/imkit/mention/DraftHelper;->getMentionBlocks(Ljava/lang/String;)Ljava/util/List;
move-result-object v0
iput-object v0, p0, Lio/rong/imkit/mention/DraftHelper;->mentionBlocks:Ljava/util/List;
:try_end_22
.catch Lorg/json/JSONException; {:try_start_9 .. :try_end_22} :catch_23
goto :goto_25
.line 7
:catch_23
iput-object p1, p0, Lio/rong/imkit/mention/DraftHelper;->content:Ljava/lang/String;
:cond_25
:goto_25
return-void
.end method
.method public static encode(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 4
.line 1
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_7
return-object p0
.line 2
:cond_7
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
:try_start_c
const-string v1, "content"
.line 3
invoke-virtual {v0, v1, p0}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
move-result-object v0
const-string v1, "mention"
.line 4
invoke-virtual {v0, v1, p1}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
move-result-object p1
.line 5
invoke-virtual {p1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object p0
:try_end_1c
.catch Lorg/json/JSONException; {:try_start_c .. :try_end_1c} :catch_1c
:catch_1c
return-object p0
.end method
.method public static getDraftContent(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.line 1
:try_start_0
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
const-string v1, "content"
.line 2
invoke-virtual {v0, v1}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
:try_end_b
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_b} :catch_b
:catch_b
return-object p0
.end method
.method private getMentionBlocks(Ljava/lang/String;)Ljava/util/List;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Lio/rong/imkit/mention/MentionBlock;",
">;"
}
.end annotation
.line 1
:try_start_0
new-instance v0, Lorg/json/JSONArray;
invoke-direct {v0, p1}, Lorg/json/JSONArray;-><init>(Ljava/lang/String;)V
.line 2
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
const/4 v1, 0x0
.line 3
:goto_b
invoke-virtual {v0}, Lorg/json/JSONArray;->length()I
move-result v2
if-ge v1, v2, :cond_20
.line 4
invoke-virtual {v0, v1}, Lorg/json/JSONArray;->getString(I)Ljava/lang/String;
move-result-object v2
.line 5
new-instance v3, Lio/rong/imkit/mention/MentionBlock;
invoke-direct {v3, v2}, Lio/rong/imkit/mention/MentionBlock;-><init>(Ljava/lang/String;)V
.line 6
invoke-interface {p1, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:try_end_1d
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_1d} :catch_21
add-int/lit8 v1, v1, 0x1
goto :goto_b
:cond_20
return-object p1
:catch_21
const/4 p1, 0x0
return-object p1
.end method
# virtual methods
.method public decode()Ljava/lang/String;
.registers 2
.line 1
iget-object v0, p0, Lio/rong/imkit/mention/DraftHelper;->content:Ljava/lang/String;
return-object v0
.end method
.method public restoreMentionInfo()V
.registers 4
.line 1
iget-object v0, p0, Lio/rong/imkit/mention/DraftHelper;->mentionBlocks:Ljava/util/List;
if-eqz v0, :cond_1c
.line 2
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_8
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1c
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lio/rong/imkit/mention/MentionBlock;
.line 3
invoke-static {}, Lio/rong/imkit/mention/RongMentionManager;->getInstance()Lio/rong/imkit/mention/RongMentionManager;
move-result-object v2
invoke-virtual {v2, v1}, Lio/rong/imkit/mention/RongMentionManager;->addMentionBlock(Lio/rong/imkit/mention/MentionBlock;)V
goto :goto_8
:cond_1c
return-void
.end method