StripeTextUtils.smali
.class public Lcom/stripe/android/util/StripeTextUtils;
.super Ljava/lang/Object;
.source "StripeTextUtils.java"
# 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 asCardBrand(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.param p0, "possibleCardType" # Ljava/lang/String;
.line 92
invoke-static {p0}, Lcom/stripe/android/util/StripeTextUtils;->isBlank(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_8
.line 93
const/4 v0, 0x0
return-object v0
.line 96
:cond_8
const-string v0, "American Express"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_11
.line 97
return-object v0
.line 98
:cond_11
const-string v0, "MasterCard"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_1a
.line 99
return-object v0
.line 100
:cond_1a
const-string v0, "Diners Club"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_23
.line 101
return-object v0
.line 102
:cond_23
const-string v0, "Discover"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_2c
.line 103
return-object v0
.line 104
:cond_2c
const-string v0, "JCB"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_35
.line 105
return-object v0
.line 106
:cond_35
const-string v0, "Visa"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_3e
.line 107
return-object v0
.line 109
:cond_3e
const-string v0, "Unknown"
return-object v0
.end method
.method public static asFundingType(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.param p0, "possibleFundingType" # Ljava/lang/String;
.line 122
invoke-static {p0}, Lcom/stripe/android/util/StripeTextUtils;->isBlank(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_8
.line 123
const/4 v0, 0x0
return-object v0
.line 126
:cond_8
const-string v0, "credit"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_11
.line 127
return-object v0
.line 128
:cond_11
const-string v0, "debit"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_1a
.line 129
return-object v0
.line 130
:cond_1a
const-string v0, "prepaid"
invoke-virtual {v0, p0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_23
.line 131
return-object v0
.line 133
:cond_23
const-string/jumbo v0, "unknown"
return-object v0
.end method
.method public static asTokenType(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.param p0, "possibleTokenType" # Ljava/lang/String;
.line 147
const-string v0, "card"
invoke-virtual {v0, p0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_9
.line 148
return-object v0
.line 150
:cond_9
const/4 v0, 0x0
return-object v0
.end method
.method public static varargs hasAnyPrefix(Ljava/lang/String;[Ljava/lang/String;)Z
.registers 7
.param p0, "number" # Ljava/lang/String;
.param p1, "prefixes" # [Ljava/lang/String;
.line 25
const/4 v0, 0x0
if-nez p0, :cond_4
.line 26
return v0
.line 29
:cond_4
array-length v1, p1
const/4 v2, 0x0
:goto_6
if-ge v2, v1, :cond_15
aget-object v3, p1, v2
.line 30
.local v3, "prefix":Ljava/lang/String;
invoke-virtual {p0, v3}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_12
.line 31
const/4 v0, 0x1
return v0
.line 29
.end local v3 # "prefix":Ljava/lang/String;
:cond_12
add-int/lit8 v2, v2, 0x1
goto :goto_6
.line 34
:cond_15
return v0
.end method
.method public static isBlank(Ljava/lang/String;)Z
.registers 2
.param p0, "value" # Ljava/lang/String;
.line 80
if-eqz p0, :cond_f
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_d
goto :goto_f
:cond_d
const/4 v0, 0x0
goto :goto_10
:cond_f
:goto_f
const/4 v0, 0x1
:goto_10
return v0
.end method
.method public static isWholePositiveNumber(Ljava/lang/String;)Z
.registers 4
.param p0, "value" # Ljava/lang/String;
.line 44
const/4 v0, 0x0
if-nez p0, :cond_4
.line 45
return v0
.line 50
:cond_4
const/4 v1, 0x0
.local v1, "i":I
:goto_5
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v2
if-ge v1, v2, :cond_19
.line 51
invoke-virtual {p0, v1}, Ljava/lang/String;->charAt(I)C
move-result v2
invoke-static {v2}, Ljava/lang/Character;->isDigit(C)Z
move-result v2
if-nez v2, :cond_16
.line 52
return v0
.line 50
:cond_16
add-int/lit8 v1, v1, 0x1
goto :goto_5
.line 55
.end local v1 # "i":I
:cond_19
const/4 v0, 0x1
return v0
.end method
.method public static nullIfBlank(Ljava/lang/String;)Ljava/lang/String;
.registers 2
.param p0, "value" # Ljava/lang/String;
.line 65
invoke-static {p0}, Lcom/stripe/android/util/StripeTextUtils;->isBlank(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_8
.line 66
const/4 v0, 0x0
return-object v0
.line 68
:cond_8
return-object p0
.end method