GuestRegistrationHandler.smali
.class public Lcom/beetalk/sdk/GuestRegistrationHandler;
.super Lcom/beetalk/sdk/AuthRequestHandler;
.source "GuestRegistrationHandler.java"
# direct methods
.method public constructor <init>(Lcom/beetalk/sdk/AuthClient;)V
.registers 2
.line 1
invoke-direct {p0, p1}, Lcom/beetalk/sdk/AuthRequestHandler;-><init>(Lcom/beetalk/sdk/AuthClient;)V
return-void
.end method
.method static synthetic access$000(Lcom/beetalk/sdk/GuestRegistrationHandler;Lorg/json/JSONObject;)Z
.registers 2
.line 1
invoke-direct {p0, p1}, Lcom/beetalk/sdk/GuestRegistrationHandler;->responseHasError(Lorg/json/JSONObject;)Z
move-result p0
return p0
.end method
.method static synthetic access$100(Lcom/beetalk/sdk/GuestRegistrationHandler;JLjava/lang/String;)V
.registers 4
.line 1
invoke-direct {p0, p1, p2, p3}, Lcom/beetalk/sdk/GuestRegistrationHandler;->grantTokenForGuest(JLjava/lang/String;)V
return-void
.end method
.method static synthetic access$200(Lcom/beetalk/sdk/GuestRegistrationHandler;Lorg/json/JSONObject;)Lcom/beetalk/sdk/AuthClient$Result;
.registers 2
.line 1
invoke-direct {p0, p1}, Lcom/beetalk/sdk/GuestRegistrationHandler;->getAuthResult(Lorg/json/JSONObject;)Lcom/beetalk/sdk/AuthClient$Result;
move-result-object p0
return-object p0
.end method
.method private getAuthResult(Lorg/json/JSONObject;)Lcom/beetalk/sdk/AuthClient$Result;
.registers 9
const-string v0, "error"
const-string v1, "open_id"
.line 1
sget-object v2, Lcom/garena/pay/android/GGErrorCode;->UNKNOWN_ERROR:Lcom/garena/pay/android/GGErrorCode;
invoke-virtual {v2}, Lcom/garena/pay/android/GGErrorCode;->getCode()Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
move-result v2
const/4 v3, 0x0
if-nez p1, :cond_21
.line 2
:try_start_11
sget-object p1, Lcom/garena/pay/android/GGErrorCode;->NETWORK_EXCEPTION:Lcom/garena/pay/android/GGErrorCode;
invoke-virtual {p1}, Lcom/garena/pay/android/GGErrorCode;->getCode()Ljava/lang/Integer;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
:goto_1b
move v2, p1
goto/16 :goto_a0
:catch_1e
move-exception p1
goto/16 :goto_9d
.line 3
:cond_21
invoke-virtual {p1, v1}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_56
.line 4
invoke-virtual {p1, v1}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "access_token"
.line 5
invoke-virtual {p1, v1}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
const-string v4, "refresh_token"
.line 6
invoke-virtual {p1, v4}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
const-string v5, "expiry_time"
.line 7
invoke-virtual {p1, v5}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
move-result p1
.line 8
new-instance v5, Lcom/beetalk/sdk/data/AuthToken;
sget-object v6, Lcom/beetalk/sdk/data/TokenProvider;->GUEST:Lcom/beetalk/sdk/data/TokenProvider;
invoke-direct {v5, v1, v6}, Lcom/beetalk/sdk/data/AuthToken;-><init>(Ljava/lang/String;Lcom/beetalk/sdk/data/TokenProvider;)V
.line 9
invoke-virtual {v5, v4}, Lcom/beetalk/sdk/data/AuthToken;->setRefreshToken(Ljava/lang/String;)V
.line 10
invoke-virtual {v5, p1}, Lcom/beetalk/sdk/data/AuthToken;->setExpiryTimestamp(I)V
.line 11
iget-object p1, p0, Lcom/beetalk/sdk/AuthRequestHandler;->client:Lcom/beetalk/sdk/AuthClient;
invoke-virtual {p1}, Lcom/beetalk/sdk/AuthClient;->getPendingRequest()Lcom/beetalk/sdk/AuthClient$AuthClientRequest;
move-result-object p1
invoke-static {p1, v5, v0}, Lcom/beetalk/sdk/AuthClient$Result;->createTokenResult(Lcom/beetalk/sdk/AuthClient$AuthClientRequest;Lcom/beetalk/sdk/data/AuthToken;Ljava/lang/String;)Lcom/beetalk/sdk/AuthClient$Result;
move-result-object p1
move-object v3, p1
goto :goto_a0
.line 12
:cond_56
invoke-virtual {p1, v0}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_91
.line 13
invoke-virtual {p1, v0}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "invalid_grant"
.line 14
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_73
.line 15
sget-object p1, Lcom/garena/pay/android/GGErrorCode;->ACCESS_TOKEN_INVALID_GRANT:Lcom/garena/pay/android/GGErrorCode;
invoke-virtual {p1}, Lcom/garena/pay/android/GGErrorCode;->getCode()Ljava/lang/Integer;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
goto :goto_1b
:cond_73
const-string v0, "error_user_ban"
.line 16
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_86
.line 17
sget-object p1, Lcom/garena/pay/android/GGErrorCode;->ERROR_USER_BANNED:Lcom/garena/pay/android/GGErrorCode;
invoke-virtual {p1}, Lcom/garena/pay/android/GGErrorCode;->getCode()Ljava/lang/Integer;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
goto :goto_1b
.line 18
:cond_86
sget-object p1, Lcom/garena/pay/android/GGErrorCode;->ERROR_GUEST_LOGIN:Lcom/garena/pay/android/GGErrorCode;
invoke-virtual {p1}, Lcom/garena/pay/android/GGErrorCode;->getCode()Ljava/lang/Integer;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
goto :goto_1b
.line 19
:cond_91
sget-object p1, Lcom/garena/pay/android/GGErrorCode;->ACCESS_TOKEN_EXCHANGE_FAILED:Lcom/garena/pay/android/GGErrorCode;
invoke-virtual {p1}, Lcom/garena/pay/android/GGErrorCode;->getCode()Ljava/lang/Integer;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
:try_end_9b
.catch Lorg/json/JSONException; {:try_start_11 .. :try_end_9b} :catch_1e
goto/16 :goto_1b
.line 20
:goto_9d
invoke-static {p1}, Lcom/beetalk/sdk/b/a;->a(Ljava/lang/Exception;)V
:goto_a0
if-nez v3, :cond_ac
.line 21
iget-object p1, p0, Lcom/beetalk/sdk/AuthRequestHandler;->client:Lcom/beetalk/sdk/AuthClient;
invoke-virtual {p1}, Lcom/beetalk/sdk/AuthClient;->getPendingRequest()Lcom/beetalk/sdk/AuthClient$AuthClientRequest;
move-result-object p1
invoke-static {p1, v2}, Lcom/beetalk/sdk/AuthClient$Result;->createErrorResult(Lcom/beetalk/sdk/AuthClient$AuthClientRequest;I)Lcom/beetalk/sdk/AuthClient$Result;
move-result-object v3
:cond_ac
return-object v3
.end method
.method private grantTokenForGuest(JLjava/lang/String;)V
.registers 10
.line 1
sget-object v3, Lcom/beetalk/sdk/request/ResponseType;->TOKEN:Lcom/beetalk/sdk/request/ResponseType;
iget-object v0, p0, Lcom/beetalk/sdk/AuthRequestHandler;->client:Lcom/beetalk/sdk/AuthClient;
.line 2
invoke-virtual {v0}, Lcom/beetalk/sdk/AuthClient;->getPendingRequest()Lcom/beetalk/sdk/AuthClient$AuthClientRequest;
move-result-object v0
invoke-virtual {v0}, Lcom/beetalk/sdk/AuthClient$AuthClientRequest;->getApplicationId()Ljava/lang/String;
move-result-object v4
new-instance v5, Lcom/beetalk/sdk/G;
invoke-direct {v5, p0}, Lcom/beetalk/sdk/G;-><init>(Lcom/beetalk/sdk/GuestRegistrationHandler;)V
move-wide v0, p1
move-object v2, p3
.line 3
invoke-static/range {v0 .. v5}, Lcom/beetalk/sdk/networking/service/h;->a(JLjava/lang/String;Lcom/beetalk/sdk/request/ResponseType;Ljava/lang/String;Lcom/beetalk/sdk/networking/HttpRequestTask$b;)V
return-void
.end method
.method private responseHasError(Lorg/json/JSONObject;)Z
.registers 3
if-eqz p1, :cond_d
const-string v0, "error"
.line 1
invoke-virtual {p1, v0}, Lorg/json/JSONObject;->has(Ljava/lang/String;)Z
move-result p1
if-eqz p1, :cond_b
goto :goto_d
:cond_b
const/4 p1, 0x0
goto :goto_e
:cond_d
:goto_d
const/4 p1, 0x1
:goto_e
return p1
.end method
# virtual methods
.method startAuth(Lcom/beetalk/sdk/AuthClient$AuthClientRequest;)Z
.registers 6
.line 1
invoke-static {}, Lcom/beetalk/sdk/cache/a;->b()Lcom/beetalk/sdk/cache/a;
move-result-object v0
invoke-virtual {v0}, Lcom/beetalk/sdk/cache/m;->getGuestUID()Ljava/lang/String;
move-result-object v0
.line 2
invoke-static {}, Lcom/beetalk/sdk/cache/a;->b()Lcom/beetalk/sdk/cache/a;
move-result-object v1
invoke-virtual {v1}, Lcom/beetalk/sdk/cache/m;->getGuestPassword()Ljava/lang/String;
move-result-object v1
.line 3
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_24
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_24
.line 4
invoke-static {v0}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
move-result-wide v2
.line 5
invoke-direct {p0, v2, v3, v1}, Lcom/beetalk/sdk/GuestRegistrationHandler;->grantTokenForGuest(JLjava/lang/String;)V
goto :goto_83
.line 6
:cond_24
invoke-static {}, Lcom/beetalk/sdk/cache/i;->b()Lcom/beetalk/sdk/cache/i;
move-result-object v0
invoke-virtual {v0}, Lcom/beetalk/sdk/cache/m;->getGuestUID()Ljava/lang/String;
move-result-object v0
.line 7
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_61
.line 8
new-instance v0, Lcom/beetalk/sdk/data/h;
invoke-direct {v0}, Lcom/beetalk/sdk/data/h;-><init>()V
.line 9
invoke-static {}, Lcom/beetalk/sdk/b/l;->a()Ljava/lang/String;
move-result-object v1
iput-object v1, v0, Lcom/beetalk/sdk/data/h;->a:Ljava/lang/String;
const-string v1, ""
.line 10
iput-object v1, v0, Lcom/beetalk/sdk/data/h;->b:Ljava/lang/String;
const/4 v1, 0x0
.line 11
iput v1, v0, Lcom/beetalk/sdk/data/h;->c:I
.line 12
invoke-virtual {p1}, Lcom/beetalk/sdk/AuthClient$AuthClientRequest;->getApplicationId()Ljava/lang/String;
move-result-object p1
iput-object p1, v0, Lcom/beetalk/sdk/data/h;->d:Ljava/lang/String;
.line 13
invoke-static {}, Lcom/beetalk/sdk/GGLoginSession;->g()Lcom/beetalk/sdk/GGLoginSession;
move-result-object p1
invoke-virtual {p1}, Lcom/beetalk/sdk/GGLoginSession;->o()Ljava/lang/Integer;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
iput p1, v0, Lcom/beetalk/sdk/data/h;->e:I
.line 14
new-instance p1, Lcom/beetalk/sdk/E;
invoke-direct {p1, p0, v0}, Lcom/beetalk/sdk/E;-><init>(Lcom/beetalk/sdk/GuestRegistrationHandler;Lcom/beetalk/sdk/data/h;)V
invoke-static {v0, p1}, Lcom/beetalk/sdk/networking/service/h;->a(Lcom/beetalk/sdk/data/h;Lcom/beetalk/sdk/networking/HttpRequestTask$b;)V
goto :goto_83
.line 15
:cond_61
invoke-static {v0}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
move-result-wide v0
.line 16
invoke-static {}, Lcom/beetalk/sdk/cache/i;->b()Lcom/beetalk/sdk/cache/i;
move-result-object p1
invoke-virtual {p1}, Lcom/beetalk/sdk/cache/m;->getGuestPassword()Ljava/lang/String;
move-result-object p1
.line 17
invoke-static {}, Lcom/beetalk/sdk/cache/a;->b()Lcom/beetalk/sdk/cache/a;
move-result-object v2
invoke-virtual {v2, v0, v1, p1}, Lcom/beetalk/sdk/cache/a;->putGuestInfo(JLjava/lang/String;)V
.line 18
:try_start_74
invoke-static {}, Lcom/beetalk/sdk/cache/i;->b()Lcom/beetalk/sdk/cache/i;
move-result-object v2
invoke-virtual {v2, v0, v1, p1}, Lcom/beetalk/sdk/cache/m;->putGuestInfo(JLjava/lang/String;)V
:try_end_7b
.catch Ljava/lang/Exception; {:try_start_74 .. :try_end_7b} :catch_7c
goto :goto_80
:catch_7c
move-exception v2
.line 19
invoke-static {v2}, Lcom/beetalk/sdk/b/a;->a(Ljava/lang/Exception;)V
.line 20
:goto_80
invoke-direct {p0, v0, v1, p1}, Lcom/beetalk/sdk/GuestRegistrationHandler;->grantTokenForGuest(JLjava/lang/String;)V
:goto_83
const/4 p1, 0x1
return p1
.end method