Token.smali

.class public Lcom/cmcm/safewallet/data/keystore/Token;
.super Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;
.source "Token.java"

# interfaces
.implements Lcom/cmcm/safewallet/utils/q;


# static fields
.field public static final CREATOR:Landroid/os/Parcelable$Creator;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Landroid/os/Parcelable$Creator",
            "<",
            "Lcom/cmcm/safewallet/data/keystore/Token;",
            ">;"
        }
    .end annotation
.end field


# direct methods
.method static constructor <clinit>()V
    .registers 1

    .prologue
    .line 79
    new-instance v0, Lcom/cmcm/safewallet/data/keystore/Token$1;

    invoke-direct {v0}, Lcom/cmcm/safewallet/data/keystore/Token$1;-><init>()V

    sput-object v0, Lcom/cmcm/safewallet/data/keystore/Token;->CREATOR:Landroid/os/Parcelable$Creator;

    return-void
.end method

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

    .prologue
    .line 59
    invoke-direct {p0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;-><init>()V

    .line 60
    return-void
.end method

.method protected constructor <init>(Landroid/os/Parcel;)V
    .registers 2

    .prologue
    .line 76
    invoke-direct {p0, p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;-><init>(Landroid/os/Parcel;)V

    .line 77
    return-void
.end method

.method public constructor <init>(Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;)V
    .registers 4

    .prologue
    .line 62
    invoke-direct {p0}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;-><init>()V

    .line 63
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/cmcm/safewallet/data/keystore/Token;->setName(Ljava/lang/String;)V

    .line 64
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getContractAddr()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/cmcm/safewallet/data/keystore/Token;->setContractAddr(Ljava/lang/String;)V

    .line 65
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getAddress()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/cmcm/safewallet/data/keystore/Token;->setAddress(Ljava/lang/String;)V

    .line 66
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getBaseBalance()D

    move-result-wide v0

    invoke-virtual {p0, v0, v1}, Lcom/cmcm/safewallet/data/keystore/Token;->setBaseBalance(D)V

    .line 67
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getCurrencyBalance()D

    move-result-wide v0

    invoke-virtual {p0, v0, v1}, Lcom/cmcm/safewallet/data/keystore/Token;->setCurrencyBalance(D)V

    .line 68
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getTokenToEth()D

    move-result-wide v0

    invoke-virtual {p0, v0, v1}, Lcom/cmcm/safewallet/data/keystore/Token;->setTokenToEth(D)V

    .line 69
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getIconUrl()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/cmcm/safewallet/data/keystore/Token;->setIconUrl(Ljava/lang/String;)V

    .line 70
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getCoinName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/cmcm/safewallet/data/keystore/Token;->setCoinName(Ljava/lang/String;)V

    .line 71
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getFullName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/cmcm/safewallet/data/keystore/Token;->setFullName(Ljava/lang/String;)V

    .line 72
    invoke-virtual {p1}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->getCreateTime()J

    move-result-wide v0

    invoke-virtual {p0, v0, v1}, Lcom/cmcm/safewallet/data/keystore/Token;->setCreateTime(J)V

    .line 73
    return-void
.end method

.method private static a(Lorg/json/JSONObject;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "<T:",
            "Ljava/lang/Object;",
            ">(",
            "Lorg/json/JSONObject;",
            "Ljava/lang/String;",
            "TT;)TT;"
        }
    .end annotation

    .prologue
    .line 26
    invoke-virtual {p0, p1}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z

    move-result v0

    if-eqz v0, :cond_a

    .line 28
    :try_start_6
    invoke-virtual {p0, p1}, Lorg/json/JSONObject;->get(Ljava/lang/String;)Ljava/lang/Object;
    :try_end_9
    .catch Lorg/json/JSONException; {:try_start_6 .. :try_end_9} :catch_b

    move-result-object p2

    .line 33
    :cond_a
    :goto_a
    return-object p2

    .line 30
    :catch_b
    move-exception v0

    invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V

    goto :goto_a
.end method


# virtual methods
.method public final a(Lorg/json/JSONObject;)Z
    .registers 4

    .prologue
    .line 38
    const-string v0, "token_contract_address"

    const-string v1, ""

    invoke-static {p1, v0, v1}, Lcom/cmcm/safewallet/data/keystore/Token;->a(Lorg/json/JSONObject;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    iput-object v0, p0, Lcom/cmcm/safewallet/data/keystore/Token;->contractAddr:Ljava/lang/String;

    .line 39
    const/4 v0, 0x0

    return v0
.end method

.method public describeContents()I
    .registers 2

    .prologue
    .line 51
    const/4 v0, 0x0

    return v0
.end method

.method public final toJSON()Lorg/json/JSONObject;
    .registers 4

    .prologue
    .line 44
    new-instance v0, Lorg/json/JSONObject;

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

    .line 45
    const-string v1, "token_contract_address"

    iget-object v2, p0, Lcom/cmcm/safewallet/data/keystore/Token;->contractAddr:Ljava/lang/String;

    .line 1019
    :try_start_9
    invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
    :try_end_c
    .catch Lorg/json/JSONException; {:try_start_9 .. :try_end_c} :catch_d

    .line 46
    :goto_c
    return-object v0

    .line 1021
    :catch_d
    move-exception v1

    invoke-virtual {v1}, Lorg/json/JSONException;->printStackTrace()V

    goto :goto_c
.end method

.method public writeToParcel(Landroid/os/Parcel;I)V
    .registers 3

    .prologue
    .line 56
    invoke-super {p0, p1, p2}, Lcom/cmcm/safewallet/data/coinprovider/erc20/ERC20Token;->writeToParcel(Landroid/os/Parcel;I)V

    .line 57
    return-void
.end method