b.smali
.class public final Lcom/cmcm/safewallet/data/coinprovider/erc20/b;
.super Ljava/lang/Object;
.source "SmartContractSupportHelper.java"
# instance fields
.field private To:Lorg/web3j/protocol/Web3j;
.field public final Tw:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap",
"<",
"Ljava/lang/String;",
"Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.registers 2
.prologue
.line 59
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 63
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
return-void
.end method
.method static synthetic a(Lcom/cmcm/safewallet/data/coinprovider/erc20/b;)V
.registers 6
.prologue
.line 59
.line 6605
iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
monitor-enter v1
.line 6606
:try_start_3
const-string v0, "SmartContractSupportHelper"
const-string v2, "initTokenFileToCache()"
.line 7052
invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
.line 6607
new-instance v0, Ljava/io/File;
sget-object v2, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 6608
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v2
if-eqz v2, :cond_74
invoke-virtual {v0}, Ljava/io/File;->canRead()Z
move-result v2
if-eqz v2, :cond_74
.line 6609
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;
invoke-virtual {v0}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 6610
new-instance v2, Ljava/util/HashMap;
invoke-direct {v2}, Ljava/util/HashMap;-><init>()V
:try_end_2d
.catchall {:try_start_3 .. :try_end_2d} :catchall_71
.line 6612
:try_start_2d
invoke-static {v0, v2}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V
.line 6613
invoke-virtual {v2}, Ljava/util/HashMap;->isEmpty()Z
move-result v0
if-nez v0, :cond_4c
.line 6614
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
.line 6615
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v0, v2}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V
.line 6616
invoke-virtual {v2}, Ljava/util/HashMap;->clear()V
.line 6617
const-string v0, "SmartContractSupportHelper"
const-string v2, "initTokenFileToCache(), success"
.line 8052
invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
:try_end_4a
.catch Lorg/json/JSONException; {:try_start_2d .. :try_end_4a} :catch_54
.catchall {:try_start_2d .. :try_end_4a} :catchall_71
.line 6629
:goto_4a
:try_start_4a
monitor-exit v1
:try_end_4b
.catchall {:try_start_4a .. :try_end_4b} :catchall_71
return-void
.line 6619
:cond_4c
:try_start_4c
const-string v0, "SmartContractSupportHelper"
const-string v2, "initTokenFileToCache(), failed, empty map"
.line 9052
invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
:try_end_53
.catch Lorg/json/JSONException; {:try_start_4c .. :try_end_53} :catch_54
.catchall {:try_start_4c .. :try_end_53} :catchall_71
goto :goto_4a
.line 6621
:catch_54
move-exception v0
.line 6622
:try_start_55
invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V
.line 6623
const-string v2, "SmartContractSupportHelper"
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "initTokenFileToCache(), failed, exception: "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0}, Lorg/json/JSONException;->getLocalizedMessage()Ljava/lang/String;
move-result-object v0
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
.line 10052
invoke-static {v2, v0}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_4a
.line 6629
:catchall_71
move-exception v0
monitor-exit v1
:try_end_73
.catchall {:try_start_55 .. :try_end_73} :catchall_71
throw v0
.line 6626
:cond_74
:try_start_74
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
.line 6627
const-string v0, "SmartContractSupportHelper"
const-string v2, "initTokenFileToCache(), failed, currTokenFile not exist"
.line 11052
invoke-static {v0, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
:try_end_80
.catchall {:try_start_74 .. :try_end_80} :catchall_71
goto :goto_4a
.end method
.method private static a(Ljava/lang/String;Ljava/util/HashMap;)V
.registers 10
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/HashMap",
"<",
"Ljava/lang/String;",
"Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
">;)V"
}
.end annotation
.prologue
const/4 v0, 0x0
.line 633
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_8
.line 673
:cond_7
return-void
.line 636
:cond_8
new-instance v1, Lorg/json/JSONTokener;
invoke-direct {v1, p0}, Lorg/json/JSONTokener;-><init>(Ljava/lang/String;)V
invoke-virtual {v1}, Lorg/json/JSONTokener;->nextValue()Ljava/lang/Object;
move-result-object v2
.line 637
const/4 v1, 0x0
.line 638
instance-of v3, v2, Lorg/json/JSONObject;
if-eqz v3, :cond_8f
.line 640
new-instance v1, Lorg/json/JSONObject;
invoke-direct {v1, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
.line 641
const-string v2, "tokens"
invoke-virtual {v1, v2}, Lorg/json/JSONObject;->optJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
move-result-object v1
move-object v2, v1
.line 646
:goto_22
if-eqz v2, :cond_7
.line 650
:goto_24
invoke-virtual {v2}, Lorg/json/JSONArray;->length()I
move-result v1
if-ge v0, v1, :cond_7
.line 652
:try_start_2a
invoke-virtual {v2, v0}, Lorg/json/JSONArray;->optJSONObject(I)Lorg/json/JSONObject;
move-result-object v1
.line 653
new-instance v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
invoke-direct {v3}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;-><init>()V
.line 654
const-string v4, "name"
invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;
.line 655
const-string v4, "contract"
invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;
.line 656
const-string v4, "decimals"
invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v4
iput v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I
.line 657
const-string v4, "icon"
invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;
.line 658
iget-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;
iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->mCoinName:Ljava/lang/String;
.line 659
const-string v4, "fullname"
invoke-virtual {v1, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;
.line 661
new-instance v4, Ljava/text/DecimalFormat;
const-string v5, "0.#"
invoke-direct {v4, v5}, Ljava/text/DecimalFormat;-><init>(Ljava/lang/String;)V
.line 662
const/4 v5, 0x0
invoke-virtual {v4, v5}, Ljava/text/DecimalFormat;->setMaximumFractionDigits(I)V
.line 663
const-string v5, "limit"
invoke-virtual {v1, v5}, Lorg/json/JSONObject;->optDouble(Ljava/lang/String;)D
move-result-wide v6
invoke-virtual {v4, v6, v7}, Ljava/text/DecimalFormat;->format(D)Ljava/lang/String;
move-result-object v1
.line 665
new-instance v4, Ljava/math/BigInteger;
invoke-direct {v4, v1}, Ljava/math/BigInteger;-><init>(Ljava/lang/String;)V
iput-object v4, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;
.line 666
const-string v1, ""
iput-object v1, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tk:Ljava/lang/String;
.line 668
iget-object v1, v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;
invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_8c
.catch Ljava/lang/Exception; {:try_start_2a .. :try_end_8c} :catch_9a
.line 650
:goto_8c
add-int/lit8 v0, v0, 0x1
goto :goto_24
.line 642
:cond_8f
instance-of v2, v2, Lorg/json/JSONArray;
if-eqz v2, :cond_9f
.line 644
new-instance v1, Lorg/json/JSONArray;
invoke-direct {v1, p0}, Lorg/json/JSONArray;-><init>(Ljava/lang/String;)V
move-object v2, v1
goto :goto_22
.line 670
:catch_9a
move-exception v1
invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
goto :goto_8c
:cond_9f
move-object v2, v1
goto :goto_22
.end method
.method static synthetic b(Landroid/content/Context;I)V
.registers 11
.prologue
.line 11164
sget-object v2, Lcom/cmcm/safewallet/data/ctrl/j;->UF:Ljava/lang/String;
.line 11165
sget-object v3, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
.line 11167
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;
move-result-object v0
const-string v1, "coin/tokens.json"
invoke-virtual {v0, p0, v1, v2}, Lcom/cmcm/safewallet/data/ctrl/j;->d(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
.line 11169
invoke-static {v2}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 11170
invoke-static {v3}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 11172
new-instance v4, Ljava/util/HashMap;
invoke-direct {v4}, Ljava/util/HashMap;-><init>()V
.line 11174
new-instance v5, Ljava/util/HashMap;
invoke-direct {v5}, Ljava/util/HashMap;-><init>()V
.line 11176
new-instance v6, Ljava/util/HashMap;
invoke-direct {v6}, Ljava/util/HashMap;-><init>()V
.line 11179
:try_start_24
invoke-static {v0, v4}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V
.line 11180
invoke-static {v1, v5}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V
:try_end_2a
.catch Lorg/json/JSONException; {:try_start_24 .. :try_end_2a} :catch_57
.line 11185
:goto_2a
invoke-virtual {v6, v4}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V
.line 11188
invoke-virtual {v5}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;
move-result-object v0
.line 11189
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v5
.line 11190
:cond_35
:goto_35
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_5c
.line 11191
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/Map$Entry;
.line 11192
invoke-interface {v0}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
.line 11193
invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
.line 11194
invoke-virtual {v4, v1}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
move-result v7
if-nez v7, :cond_35
.line 11196
invoke-virtual {v6, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_35
.line 11182
:catch_57
move-exception v0
invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V
goto :goto_2a
.line 11199
:cond_5c
new-instance v1, Lorg/json/JSONObject;
invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V
.line 11201
new-instance v4, Lorg/json/JSONArray;
invoke-direct {v4}, Lorg/json/JSONArray;-><init>()V
.line 11203
:try_start_66
invoke-virtual {v6}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;
move-result-object v0
.line 11204
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v5
.line 11205
:goto_6e
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_c6
.line 11206
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/Map$Entry;
.line 11207
invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
.line 11208
new-instance v6, Lorg/json/JSONObject;
invoke-direct {v6}, Lorg/json/JSONObject;-><init>()V
.line 11209
const-string v7, "name"
iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;
invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 11210
const-string v7, "fullname"
iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;
invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 11211
const-string v7, "contract"
iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;
invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 11212
const-string v7, "decimals"
iget v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I
invoke-static {v8}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v8
invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 11213
const-string v7, "icon"
iget-object v8, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;
invoke-virtual {v6, v7, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 11214
const-string v7, "limit"
iget-object v0, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;
invoke-virtual {v0}, Ljava/math/BigInteger;->intValue()I
move-result v0
invoke-virtual {v6, v7, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
.line 11215
const-string v0, "saler"
const-string v7, ""
invoke-virtual {v6, v0, v7}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 11216
invoke-virtual {v4, v6}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
:try_end_c1
.catch Lorg/json/JSONException; {:try_start_66 .. :try_end_c1} :catch_c2
goto :goto_6e
.line 11219
:catch_c2
move-exception v0
invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V
.line 11223
:cond_c6
:try_start_c6
const-string v0, "version"
invoke-virtual {v1, v0, p1}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
.line 11224
const-string v0, "tokens"
invoke-virtual {v1, v0, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:try_end_d0
.catch Lorg/json/JSONException; {:try_start_c6 .. :try_end_d0} :catch_e9
.line 11229
:goto_d0
invoke-virtual {v1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v3, v0}, Lcom/cmcm/safewallet/data/ctrl/j;->M(Ljava/lang/String;Ljava/lang/String;)Z
.line 11230
new-instance v0, Ljava/lang/StringBuilder;
const-string v3, " mergeTokenResource >> "
invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 11231
invoke-static {v2}, Lcom/cmcm/safewallet/data/ctrl/j;->deleteFile(Ljava/lang/String;)Z
.line 59
return-void
.line 11226
:catch_e9
move-exception v0
invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V
goto :goto_d0
.end method
.method public static final iK()Lcom/cmcm/safewallet/data/coinprovider/erc20/b;
.registers 1
.prologue
.line 72
invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/erc20/c;->iN()Lcom/cmcm/safewallet/data/coinprovider/erc20/b;
move-result-object v0
return-object v0
.end method
.method static synthetic iM()Z
.registers 5
.prologue
const/4 v0, 0x0
.line 3574
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jl()Z
move-result v1
if-nez v1, :cond_8
.line 3595
:goto_7
return v0
.line 3577
:cond_8
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->ji()Ljava/lang/String;
move-result-object v1
.line 3578
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jj()Ljava/lang/String;
move-result-object v2
.line 3580
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
sget-object v4, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
const-string v4, ".tmp"
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
.line 3581
new-instance v4, Ljava/io/File;
invoke-direct {v4, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 3582
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;
invoke-static {v1, v3}, Lcom/cmcm/safewallet/data/ctrl/j;->N(Ljava/lang/String;Ljava/lang/String;)Z
.line 3584
invoke-virtual {v4}, Ljava/io/File;->exists()Z
move-result v1
if-eqz v1, :cond_61
invoke-virtual {v4}, Ljava/io/File;->canRead()Z
move-result v1
if-eqz v1, :cond_61
.line 3585
invoke-static {v4}, Lcom/cmcm/safewallet/utils/aa;->n(Ljava/io/File;)Ljava/lang/String;
move-result-object v1
.line 3586
invoke-virtual {v2, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_59
.line 3588
new-instance v0, Ljava/io/File;
sget-object v1, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 3589
invoke-virtual {v4, v0}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
.line 3590
const-string v0, "SmartContractSupportHelper"
const-string v1, "tryToDownloadTokenFile(), success"
.line 4052
invoke-static {v0, v1}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
.line 3591
const/4 v0, 0x1
goto :goto_7
.line 3594
:cond_59
const-string v1, "SmartContractSupportHelper"
const-string v2, "tryToDownloadTokenFile(), success but md5 not match"
.line 5052
invoke-static {v1, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_7
.line 3599
:cond_61
const-string v1, "SmartContractSupportHelper"
const-string v2, "tryToDownloadTokenFile(), failed"
.line 6052
invoke-static {v1, v2}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_7
.end method
.method private static k(Ljava/util/Map;)Ljava/util/Map;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Map",
"<",
"Ljava/lang/String;",
"Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
">;)",
"Ljava/util/Map",
"<",
"Ljava/lang/String;",
"Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
">;"
}
.end annotation
.prologue
.line 546
new-instance v0, Landroid/support/v4/f/a;
invoke-direct {v0}, Landroid/support/v4/f/a;-><init>()V
.line 547
if-nez p0, :cond_8
.line 551
:goto_7
return-object v0
.line 550
:cond_8
invoke-interface {v0, p0}, Ljava/util/Map;->putAll(Ljava/util/Map;)V
goto :goto_7
.end method
# virtual methods
.method final a(Ljava/lang/String;Lorg/web3j/abi/datatypes/Function;)Ljava/lang/String;
.registers 6
.prologue
.line 454
.line 1464
:try_start_0
invoke-static {p2}, Lorg/web3j/abi/FunctionEncoder;->encode(Lorg/web3j/abi/datatypes/Function;)Ljava/lang/String;
move-result-object v0
.line 1465
iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->To:Lorg/web3j/protocol/Web3j;
if-nez v1, :cond_19
.line 1466
new-instance v1, Lorg/web3j/protocol/http/HttpService;
invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/eth/depends/c;->iQ()Lcom/cmcm/safewallet/data/coinprovider/eth/depends/e;
move-result-object v2
iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/eth/depends/e;->Ue:Ljava/lang/String;
invoke-direct {v1, v2}, Lorg/web3j/protocol/http/HttpService;-><init>(Ljava/lang/String;)V
invoke-static {v1}, Lorg/web3j/protocol/Web3jFactory;->build(Lorg/web3j/protocol/Web3jService;)Lorg/web3j/protocol/Web3j;
move-result-object v1
iput-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->To:Lorg/web3j/protocol/Web3j;
.line 1468
:cond_19
iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->To:Lorg/web3j/protocol/Web3j;
.line 1469
invoke-static {p1, p1, v0}, Lorg/web3j/protocol/core/methods/request/Transaction;->createEthCallTransaction(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/web3j/protocol/core/methods/request/Transaction;
move-result-object v0
sget-object v2, Lorg/web3j/protocol/core/DefaultBlockParameterName;->LATEST:Lorg/web3j/protocol/core/DefaultBlockParameterName;
.line 1468
invoke-interface {v1, v0, v2}, Lorg/web3j/protocol/Web3j;->ethCall(Lorg/web3j/protocol/core/methods/request/Transaction;Lorg/web3j/protocol/core/DefaultBlockParameter;)Lorg/web3j/protocol/core/Request;
move-result-object v0
.line 1471
invoke-virtual {v0}, Lorg/web3j/protocol/core/Request;->sendAsync()Ljava/util/concurrent/Future;
move-result-object v0
invoke-interface {v0}, Ljava/util/concurrent/Future;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/web3j/protocol/core/methods/response/EthCall;
.line 1473
invoke-virtual {v0}, Lorg/web3j/protocol/core/methods/response/EthCall;->getValue()Ljava/lang/String;
move-result-object v0
.line 455
invoke-virtual {p2}, Lorg/web3j/abi/datatypes/Function;->getOutputParameters()Ljava/util/List;
move-result-object v1
invoke-static {v0, v1}, Lorg/web3j/abi/FunctionReturnDecoder;->decode(Ljava/lang/String;Ljava/util/List;)Ljava/util/List;
move-result-object v0
.line 456
const/4 v1, 0x0
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/web3j/abi/datatypes/Type;
invoke-interface {v0}, Lorg/web3j/abi/datatypes/Type;->getValue()Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
:try_end_49
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_49} :catch_4b
move-result-object v0
.line 460
:goto_4a
return-object v0
.line 458
:catch_4b
move-exception v0
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
.line 460
const/4 v0, 0x0
goto :goto_4a
.end method
.method public final aM(Ljava/lang/String;)Ljava/util/List;
.registers 18
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")",
"Ljava/util/List",
"<",
"Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
">;"
}
.end annotation
.prologue
.line 239
move-object/from16 v0, p0
iget-object v11, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
monitor-enter v11
.line 240
:try_start_5
new-instance v10, Ljava/util/ArrayList;
invoke-direct {v10}, Ljava/util/ArrayList;-><init>()V
.line 242
new-instance v12, Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v2, 0x0
invoke-direct {v12, v2}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>(I)V
.line 243
new-instance v13, Ljava/util/HashMap;
invoke-direct {v13}, Ljava/util/HashMap;-><init>()V
.line 244
move-object/from16 v0, p0
iget-object v2, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v13, v2}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V
.line 245
invoke-static {}, Lcom/cmcm/safewallet/data/remote/b;->ll()Lcom/cmcm/safewallet/data/remote/b;
move-result-object v2
invoke-virtual {v2}, Lcom/cmcm/safewallet/data/remote/b;->lm()Lcom/cmcm/safewallet/data/remote/api/EtherScanRequest;
move-result-object v2
const-string v3, "account"
const-string v4, "tokentx"
const-string v6, "0"
const-string v7, "999999999"
const-string v8, "desc"
invoke-static {}, Lcom/cmcm/safewallet/data/remote/b;->lk()Ljava/lang/String;
move-result-object v9
move-object/from16 v5, p1
invoke-interface/range {v2 .. v9}, Lcom/cmcm/safewallet/data/remote/api/EtherScanRequest;->getTokenTxTransacations(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lretrofit2/Call;
move-result-object v2
.line 246
invoke-interface {v2}, Lretrofit2/Call;->execute()Lretrofit2/Response;
move-result-object v2
.line 247
invoke-virtual {v2}, Lretrofit2/Response;->isSuccessful()Z
move-result v3
if-eqz v3, :cond_15d
.line 248
invoke-virtual {v2}, Lretrofit2/Response;->body()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lorg/json/JSONObject;
.line 249
if-eqz v2, :cond_15d
.line 250
const-string v3, "result"
const/4 v4, 0x0
invoke-virtual {v2, v3, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
.line 251
if-nez v2, :cond_56
.line 252
monitor-exit v11
:try_end_54
.catchall {:try_start_5 .. :try_end_54} :catchall_cc
move-object v2, v10
.line 433
:goto_55
return-object v2
.line 257
:cond_56
:try_start_56
new-instance v3, Lorg/json/JSONTokener;
invoke-direct {v3, v2}, Lorg/json/JSONTokener;-><init>(Ljava/lang/String;)V
invoke-virtual {v3}, Lorg/json/JSONTokener;->nextValue()Ljava/lang/Object;
move-result-object v3
instance-of v3, v3, Lorg/json/JSONArray;
:try_end_61
.catch Lorg/json/JSONException; {:try_start_56 .. :try_end_61} :catch_66
.catchall {:try_start_56 .. :try_end_61} :catchall_cc
if-nez v3, :cond_7b
.line 259
:try_start_63
monitor-exit v11
move-object v2, v10
goto :goto_55
.line 261
:catch_66
move-exception v2
.line 262
invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V
.line 263
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, " \u5b58\u5728\u5f02\u5e38 >> "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2}, Lorg/json/JSONException;->getMessage()Ljava/lang/String;
move-result-object v2
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 265
monitor-exit v11
move-object v2, v10
goto :goto_55
.line 267
:cond_7b
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_15d
.line 268
new-instance v3, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$2;
invoke-direct {v3}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$2;-><init>()V
.line 1101
iget-object v3, v3, Lcom/google/gson/b/a;->type:Ljava/lang/reflect/Type;
.line 270
new-instance v4, Landroid/support/v4/f/b;
invoke-direct {v4}, Landroid/support/v4/f/b;-><init>()V
.line 271
new-instance v5, Lcom/google/gson/d;
invoke-direct {v5}, Lcom/google/gson/d;-><init>()V
invoke-virtual {v5, v2, v3}, Lcom/google/gson/d;->a(Ljava/lang/String;Ljava/lang/reflect/Type;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/List;
.line 272
new-instance v3, Ljava/util/ArrayList;
invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
.line 273
if-eqz v2, :cond_dc
.line 274
invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v5
:goto_a3
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_dc
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;
.line 275
iget-object v6, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;
invoke-interface {v4, v6}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v6
if-nez v6, :cond_cf
.line 276
new-instance v6, Ljava/lang/StringBuilder;
const-string v7, "\u5b58\u5728\u5408\u7ea6 "
invoke-direct {v6, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v7, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 277
invoke-interface {v3, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 278
iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;
invoke-interface {v4, v2}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
goto :goto_a3
.line 434
:catchall_cc
move-exception v2
monitor-exit v11
:try_end_ce
.catchall {:try_start_63 .. :try_end_ce} :catchall_cc
throw v2
.line 280
:cond_cf
:try_start_cf
new-instance v6, Ljava/lang/StringBuilder;
const-string v7, "\u53bb\u91cd\u5408\u7ea6 "
invoke-direct {v6, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;->contractAddress:Ljava/lang/String;
invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_a3
.line 284
:cond_dc
new-instance v2, Ljava/lang/StringBuilder;
const-string v4, "tokenTxTransacationList.size >> "
invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
.line 285
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v2
if-lez v2, :cond_15d
.line 287
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Runtime;->availableProcessors()I
move-result v2
shl-int/lit8 v2, v2, 0x1
.line 289
invoke-static {v2}, Ljava/util/concurrent/Executors;->newFixedThreadPool(I)Ljava/util/concurrent/ExecutorService;
move-result-object v14
.line 291
new-instance v7, Ljava/lang/Object;
invoke-direct {v7}, Ljava/lang/Object;-><init>()V
.line 292
new-instance v6, Ljava/util/concurrent/CountDownLatch;
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v2
invoke-direct {v6, v2}, Ljava/util/concurrent/CountDownLatch;-><init>(I)V
.line 293
new-instance v2, Ljava/lang/StringBuilder;
const-string v4, " \u67e5\u8be2\u5f00\u59cb "
invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
.line 294
invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v15
:goto_11e
invoke-interface {v15}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_138
invoke-interface {v15}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v5
check-cast v5, Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;
.line 295
new-instance v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$3;
move-object/from16 v3, p0
move-object v4, v13
move-object v8, v10
move-object v9, v12
invoke-direct/range {v2 .. v9}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b$3;-><init>(Lcom/cmcm/safewallet/data/coinprovider/erc20/b;Ljava/util/HashMap;Lcom/cmcm/safewallet/data/coinprovider/erc20/TokenTxTransacation;Ljava/util/concurrent/CountDownLatch;Ljava/lang/Object;Ljava/util/List;Ljava/util/concurrent/atomic/AtomicInteger;)V
invoke-interface {v14, v2}, Ljava/util/concurrent/ExecutorService;->execute(Ljava/lang/Runnable;)V
goto :goto_11e
.line 371
:cond_138
invoke-virtual {v6}, Ljava/util/concurrent/CountDownLatch;->await()V
.line 372
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, " \u67e5\u8be2\u5b8c\u6210 "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, " \u589e\u52a0\u4e86 "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, " \u4e2a\u5408\u7ea6"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 378
:cond_15d
invoke-virtual {v12}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v2
if-lez v2, :cond_20c
.line 380
const/4 v2, 0x0
.line 381
const/4 v4, 0x0
.line 382
sget-object v3, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
invoke-static {v3}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;
:try_end_16a
.catchall {:try_start_cf .. :try_end_16a} :catchall_cc
move-result-object v3
.line 384
:try_start_16b
new-instance v5, Lorg/json/JSONTokener;
invoke-direct {v5, v3}, Lorg/json/JSONTokener;-><init>(Ljava/lang/String;)V
invoke-virtual {v5}, Lorg/json/JSONTokener;->nextValue()Ljava/lang/Object;
move-result-object v4
.line 385
instance-of v3, v4, Lorg/json/JSONObject;
:try_end_176
.catch Lorg/json/JSONException; {:try_start_16b .. :try_end_176} :catch_227
.catchall {:try_start_16b .. :try_end_176} :catchall_cc
if-eqz v3, :cond_21e
.line 387
const/4 v2, 0x0
move-object v3, v4
move v5, v2
.line 396
:goto_17b
:try_start_17b
new-instance v4, Lorg/json/JSONArray;
invoke-direct {v4}, Lorg/json/JSONArray;-><init>()V
:try_end_180
.catchall {:try_start_17b .. :try_end_180} :catchall_cc
.line 398
:try_start_180
invoke-virtual {v13}, Ljava/util/HashMap;->entrySet()Ljava/util/Set;
move-result-object v2
.line 399
invoke-interface {v2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v6
.line 400
:goto_188
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1e0
.line 401
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/Map$Entry;
.line 402
invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
.line 403
new-instance v7, Lorg/json/JSONObject;
invoke-direct {v7}, Lorg/json/JSONObject;-><init>()V
.line 404
const-string v8, "name"
iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->name:Ljava/lang/String;
invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 405
const-string v8, "fullname"
iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tl:Ljava/lang/String;
invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 406
const-string v8, "contract"
iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->contractAddress:Ljava/lang/String;
invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 407
const-string v8, "decimals"
iget v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I
invoke-static {v9}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v9
invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 408
const-string v8, "icon"
iget-object v9, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tj:Ljava/lang/String;
invoke-virtual {v7, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 409
const-string v8, "limit"
iget-object v2, v2, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;
invoke-virtual {v2}, Ljava/math/BigInteger;->intValue()I
move-result v2
invoke-virtual {v7, v8, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
.line 410
const-string v2, "saler"
const-string v8, ""
invoke-virtual {v7, v2, v8}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 411
invoke-virtual {v4, v7}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
:try_end_1db
.catch Lorg/json/JSONException; {:try_start_180 .. :try_end_1db} :catch_1dc
.catchall {:try_start_180 .. :try_end_1db} :catchall_cc
goto :goto_188
.line 414
:catch_1dc
move-exception v2
:try_start_1dd
invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V
:try_end_1e0
.catchall {:try_start_1dd .. :try_end_1e0} :catchall_cc
.line 417
:cond_1e0
if-nez v5, :cond_234
.line 419
:try_start_1e2
move-object v0, v3
check-cast v0, Lorg/json/JSONObject;
move-object v2, v0
const-string v5, "tokens"
invoke-virtual {v2, v5, v4}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:try_end_1eb
.catch Lorg/json/JSONException; {:try_start_1e2 .. :try_end_1eb} :catch_22f
.catchall {:try_start_1e2 .. :try_end_1eb} :catchall_cc
.line 427
:goto_1eb
:try_start_1eb
sget-object v2, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v2, v4}, Lcom/cmcm/safewallet/data/ctrl/j;->M(Ljava/lang/String;Ljava/lang/String;)Z
.line 428
new-instance v2, Ljava/lang/StringBuilder;
const-string v4, " ChgNum >> "
invoke-direct {v2, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v4, " autoInsertSmartContracts >> "
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v3}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 431
:cond_20c
move-object/from16 v0, p0
iget-object v2, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v2}, Ljava/util/HashMap;->clear()V
.line 432
move-object/from16 v0, p0
iget-object v2, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v2, v13}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V
.line 433
monitor-exit v11
:try_end_21b
.catchall {:try_start_1eb .. :try_end_21b} :catchall_cc
move-object v2, v10
goto/16 :goto_55
.line 388
:cond_21e
:try_start_21e
instance-of v3, v4, Lorg/json/JSONArray;
:try_end_220
.catch Lorg/json/JSONException; {:try_start_21e .. :try_end_220} :catch_227
.catchall {:try_start_21e .. :try_end_220} :catchall_cc
if-eqz v3, :cond_223
.line 390
const/4 v2, 0x1
:cond_223
move-object v3, v4
move v5, v2
.line 394
goto/16 :goto_17b
.line 393
:catch_227
move-exception v3
:try_start_228
invoke-virtual {v3}, Lorg/json/JSONException;->printStackTrace()V
move-object v3, v4
move v5, v2
goto/16 :goto_17b
.line 421
:catch_22f
move-exception v2
invoke-virtual {v2}, Lorg/json/JSONException;->printStackTrace()V
:try_end_233
.catchall {:try_start_228 .. :try_end_233} :catchall_cc
goto :goto_1eb
:cond_234
move-object v3, v4
.line 424
goto :goto_1eb
.end method
.method public final aN(Ljava/lang/String;)I
.registers 4
.prologue
.line 558
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_f
.line 559
const-string v0, "SmartContractSupportHelper"
const-string v1, "getDecimalsByContractAddress fail because contractAddress is empty."
.line 3052
invoke-static {v0, v1}, Lcom/cmcm/safewallet/a/e;->d(Ljava/lang/String;Ljava/lang/String;)V
.line 560
const/4 v0, 0x0
.line 562
:goto_e
return v0
:cond_f
invoke-virtual {p0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->iL()Ljava/util/Map;
move-result-object v0
invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
iget v0, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tn:I
goto :goto_e
.end method
.method public final aO(Ljava/lang/String;)Ljava/math/BigInteger;
.registers 4
.prologue
.line 569
invoke-virtual {p0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->iL()Ljava/util/Map;
move-result-object v0
invoke-virtual {p1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;
.line 570
iget-object v0, v0, Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;->Tm:Ljava/math/BigInteger;
return-object v0
.end method
.method public final iL()Ljava/util/Map;
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map",
"<",
"Ljava/lang/String;",
"Lcom/cmcm/safewallet/data/coinprovider/erc20/ContractModel;",
">;"
}
.end annotation
.prologue
.line 513
iget-object v1, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
monitor-enter v1
.line 514
:try_start_3
invoke-static {}, Lcom/cmcm/safewallet/data/coinprovider/n;->fU()Lcom/cmcm/safewallet/data/coinprovider/n;
.line 520
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z
move-result v0
if-nez v0, :cond_16
.line 521
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-static {v0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->k(Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
monitor-exit v1
.line 540
:goto_15
return-object v0
.line 523
:cond_16
iget-object v2, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
monitor-enter v2
:try_end_19
.catchall {:try_start_3 .. :try_end_19} :catchall_2a
.line 524
:try_start_19
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->isEmpty()Z
move-result v0
if-nez v0, :cond_2d
.line 525
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-static {v0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->k(Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
monitor-exit v2
:try_end_28
.catchall {:try_start_19 .. :try_end_28} :catchall_60
:try_start_28
monitor-exit v1
goto :goto_15
.line 542
:catchall_2a
move-exception v0
monitor-exit v1
:try_end_2c
.catchall {:try_start_28 .. :try_end_2c} :catchall_2a
throw v0
.line 528
:cond_2d
:try_start_2d
invoke-static {}, Lcom/cmcm/safewallet/entry/WalletApp;->lO()Landroid/content/Context;
:try_end_30
.catchall {:try_start_2d .. :try_end_30} :catchall_60
move-result-object v0
.line 530
:try_start_31
sget-object v3, Lcom/cmcm/safewallet/data/ctrl/j;->UE:Ljava/lang/String;
.line 531
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;
move-result-object v4
invoke-virtual {v4, v3}, Lcom/cmcm/safewallet/data/ctrl/j;->ba(Ljava/lang/String;)Z
move-result v4
.line 532
if-nez v4, :cond_46
.line 533
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;
move-result-object v4
const-string v5, "coin/tokens.json"
invoke-virtual {v4, v0, v5, v3}, Lcom/cmcm/safewallet/data/ctrl/j;->d(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
.line 535
:cond_46
invoke-static {}, Lcom/cmcm/safewallet/data/ctrl/j;->jf()Lcom/cmcm/safewallet/data/ctrl/j;
invoke-static {v3}, Lcom/cmcm/safewallet/data/ctrl/j;->V(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 536
iget-object v3, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-static {v0, v3}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->a(Ljava/lang/String;Ljava/util/HashMap;)V
:try_end_52
.catch Ljava/lang/Exception; {:try_start_31 .. :try_end_52} :catch_5b
.catchall {:try_start_31 .. :try_end_52} :catchall_60
.line 540
:goto_52
:try_start_52
iget-object v0, p0, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->Tw:Ljava/util/HashMap;
invoke-static {v0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/b;->k(Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
monitor-exit v2
:try_end_59
.catchall {:try_start_52 .. :try_end_59} :catchall_60
:try_start_59
monitor-exit v1
:try_end_5a
.catchall {:try_start_59 .. :try_end_5a} :catchall_2a
goto :goto_15
.line 538
:catch_5b
move-exception v0
:try_start_5c
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
goto :goto_52
.line 541
:catchall_60
move-exception v0
monitor-exit v2
:try_end_62
.catchall {:try_start_5c .. :try_end_62} :catchall_60
:try_start_62
throw v0
:try_end_63
.catchall {:try_start_62 .. :try_end_63} :catchall_2a
.end method