CardParser.smali
.class public Lcom/stripe/android/net/CardParser;
.super Ljava/lang/Object;
.source "CardParser.java"
# static fields
.field static final FIELD_ADDRESS_CITY:Ljava/lang/String; = "address_city"
.field static final FIELD_ADDRESS_COUNTRY:Ljava/lang/String; = "address_country"
.field static final FIELD_ADDRESS_LINE1:Ljava/lang/String; = "address_line1"
.field static final FIELD_ADDRESS_LINE2:Ljava/lang/String; = "address_line2"
.field static final FIELD_ADDRESS_STATE:Ljava/lang/String; = "address_state"
.field static final FIELD_ADDRESS_ZIP:Ljava/lang/String; = "address_zip"
.field static final FIELD_BRAND:Ljava/lang/String; = "brand"
.field static final FIELD_COUNTRY:Ljava/lang/String; = "country"
.field static final FIELD_CURRENCY:Ljava/lang/String; = "currency"
.field static final FIELD_EXP_MONTH:Ljava/lang/String; = "exp_month"
.field static final FIELD_EXP_YEAR:Ljava/lang/String; = "exp_year"
.field static final FIELD_FINGERPRINT:Ljava/lang/String; = "fingerprint"
.field static final FIELD_FUNDING:Ljava/lang/String; = "funding"
.field static final FIELD_LAST4:Ljava/lang/String; = "last4"
.field static final FIELD_NAME:Ljava/lang/String; = "name"
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 15
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static parseCard(Ljava/lang/String;)Lcom/stripe/android/model/Card;
.registers 3
.param p0, "jsonCard" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/json/JSONException;
}
.end annotation
.line 42
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
.line 43
.local v0, "cardObject":Lorg/json/JSONObject;
invoke-static {v0}, Lcom/stripe/android/net/CardParser;->parseCard(Lorg/json/JSONObject;)Lcom/stripe/android/model/Card;
move-result-object v1
return-object v1
.end method
.method public static parseCard(Lorg/json/JSONObject;)Lcom/stripe/android/model/Card;
.registers 21
.param p0, "objectCard" # Lorg/json/JSONObject;
.annotation system Ldalvik/annotation/Throws;
value = {
Lorg/json/JSONException;
}
.end annotation
.line 55
move-object/from16 v0, p0
new-instance v19, Lcom/stripe/android/model/Card;
move-object/from16 v1, v19
.line 57
const-string v2, "exp_month"
invoke-virtual {v0, v2}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
move-result v2
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
.line 58
const-string v2, "exp_year"
invoke-virtual {v0, v2}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
move-result v2
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
.line 60
const-string v2, "name"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v6
.line 61
const-string v2, "address_line1"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v7
.line 62
const-string v2, "address_line2"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v8
.line 63
const-string v2, "address_city"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v9
.line 64
const-string v2, "address_state"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v10
.line 65
const-string v2, "address_zip"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v11
.line 66
const-string v2, "address_country"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v12
.line 67
const-string v2, "brand"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/stripe/android/util/StripeTextUtils;->asCardBrand(Ljava/lang/String;)Ljava/lang/String;
move-result-object v13
.line 68
const-string v2, "last4"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v14
.line 69
const-string v2, "fingerprint"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v15
.line 70
const-string v2, "funding"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/stripe/android/util/StripeTextUtils;->asFundingType(Ljava/lang/String;)Ljava/lang/String;
move-result-object v16
.line 71
const-string v2, "country"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v17
.line 72
const-string v2, "currency"
invoke-static {v0, v2}, Lcom/stripe/android/util/StripeJsonUtils;->optString(Lorg/json/JSONObject;Ljava/lang/String;)Ljava/lang/String;
move-result-object v18
const/4 v2, 0x0
const/4 v5, 0x0
invoke-direct/range {v1 .. v18}, Lcom/stripe/android/model/Card;-><init>(Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/Integer;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 55
return-object v19
.end method