EasypayWebViewClient.smali

.class public Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;
.super Landroid/webkit/WebViewClient;
.source "EasypayWebViewClient.java"

# interfaces
.implements Ljava/io/Serializable;


# static fields
.field public static smsTrackingTime:J


# instance fields
.field private doActionsTimer:Ljava/util/Timer;

.field private fragment:Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;

.field private mActivity:Landroid/app/Activity;

.field private mFragmentId:I

.field private mWcListenr:Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;


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

    return-void
.end method

.method public constructor <init>(Landroid/app/Activity;)V
    .registers 4

    .line 36
    invoke-direct {p0}, Landroid/webkit/WebViewClient;-><init>()V

    .line 37
    iput-object p1, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->mActivity:Landroid/app/Activity;

    .line 38
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v0

    sput-wide v0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->smsTrackingTime:J

    return-void
.end method

.method static synthetic access$000(Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;)Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;
    .registers 1

    .line 26
    iget-object p0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->fragment:Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;

    return-object p0
.end method

.method static synthetic access$100(Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;)Landroid/app/Activity;
    .registers 1

    .line 26
    iget-object p0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->mActivity:Landroid/app/Activity;

    return-object p0
.end method


# virtual methods
.method public onPageFinished(Landroid/webkit/WebView;Ljava/lang/String;)V
    .registers 6

    .line 61
    invoke-super {p0, p1, p2}, Landroid/webkit/WebViewClient;->onPageFinished(Landroid/webkit/WebView;Ljava/lang/String;)V

    .line 62
    invoke-static {}, Lcom/paytm/pgsdk/easypay/manager/PaytmAssist;->getAssistInstance()Lcom/paytm/pgsdk/easypay/manager/PaytmAssist;

    move-result-object v0

    invoke-virtual {v0}, Lcom/paytm/pgsdk/easypay/manager/PaytmAssist;->getFragment()Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;

    move-result-object v0

    iput-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->fragment:Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;

    if-eqz v0, :cond_ab

    .line 65
    invoke-virtual {v0}, Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;->getActivity()Landroid/app/Activity;

    move-result-object v0

    if-eqz v0, :cond_ab

    .line 66
    iget-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->fragment:Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;

    invoke-virtual {v0}, Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;->getActivity()Landroid/app/Activity;

    move-result-object v0

    invoke-virtual {v0}, Landroid/app/Activity;->isFinishing()Z

    move-result v0

    if-nez v0, :cond_ab

    .line 68
    invoke-static {}, Lcom/paytm/pgsdk/PaytmPGService;->getService()Lcom/paytm/pgsdk/PaytmPGService;

    move-result-object v0

    iget-object v0, v0, Lcom/paytm/pgsdk/PaytmPGService;->mOrder:Lcom/paytm/pgsdk/PaytmOrder;

    if-eqz v0, :cond_ab

    .line 69
    invoke-static {}, Lcom/paytm/pgsdk/PaytmPGService;->getService()Lcom/paytm/pgsdk/PaytmPGService;

    move-result-object v0

    iget-object v0, v0, Lcom/paytm/pgsdk/PaytmPGService;->mOrder:Lcom/paytm/pgsdk/PaytmOrder;

    invoke-virtual {v0}, Lcom/paytm/pgsdk/PaytmOrder;->getRequestParamMap()Ljava/util/HashMap;

    move-result-object v0

    if-eqz v0, :cond_93

    .line 70
    invoke-static {}, Lcom/paytm/pgsdk/PaytmPGService;->getService()Lcom/paytm/pgsdk/PaytmPGService;

    move-result-object v0

    iget-object v0, v0, Lcom/paytm/pgsdk/PaytmPGService;->mOrder:Lcom/paytm/pgsdk/PaytmOrder;

    invoke-virtual {v0}, Lcom/paytm/pgsdk/PaytmOrder;->getRequestParamMap()Ljava/util/HashMap;

    move-result-object v0

    const-string v1, "CALLBACK_URL"

    invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/CharSequence;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_93

    .line 71
    invoke-virtual {p2}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;

    move-result-object v0

    invoke-static {}, Lcom/paytm/pgsdk/PaytmPGService;->getService()Lcom/paytm/pgsdk/PaytmPGService;

    move-result-object v2

    iget-object v2, v2, Lcom/paytm/pgsdk/PaytmPGService;->mOrder:Lcom/paytm/pgsdk/PaytmOrder;

    invoke-virtual {v2}, Lcom/paytm/pgsdk/PaytmOrder;->getRequestParamMap()Ljava/util/HashMap;

    move-result-object v2

    invoke-virtual {v2, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/lang/String;

    invoke-virtual {v1}, Ljava/lang/String;->toLowerCase()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v0

    const-string v1, "javascript:window.HTMLOUT.processResponse(document.getElementById(\'response\').value);"

    if-eqz v0, :cond_88

    .line 73
    new-instance v0, Lcom/paytm/pgsdk/PaytmWebView$PaytmJavaScriptInterface;

    invoke-static {}, Lcom/paytm/pgsdk/easypay/manager/PaytmAssist;->getAssistInstance()Lcom/paytm/pgsdk/easypay/manager/PaytmAssist;

    move-result-object v2

    invoke-virtual {v2}, Lcom/paytm/pgsdk/easypay/manager/PaytmAssist;->getWebView()Landroid/webkit/WebView;

    move-result-object v2

    check-cast v2, Lcom/paytm/pgsdk/PaytmWebView;

    invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    invoke-direct {v0, v2}, Lcom/paytm/pgsdk/PaytmWebView$PaytmJavaScriptInterface;-><init>(Lcom/paytm/pgsdk/PaytmWebView;)V

    const-string v2, "HTMLOUT"

    invoke-virtual {p1, v0, v2}, Landroid/webkit/WebView;->addJavascriptInterface(Ljava/lang/Object;Ljava/lang/String;)V

    .line 76
    invoke-virtual {p1, v1}, Landroid/webkit/WebView;->loadUrl(Ljava/lang/String;)V

    goto :goto_93

    :cond_88
    const-string v0, "/CAS/Response"

    .line 77
    invoke-virtual {p2, v0}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z

    move-result v0

    if-eqz v0, :cond_93

    .line 80
    invoke-virtual {p1, v1}, Landroid/webkit/WebView;->loadUrl(Ljava/lang/String;)V

    .line 86
    :cond_93
    :goto_93
    iget-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->mWcListenr:Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;

    if-eqz v0, :cond_9a

    .line 88
    invoke-interface {v0, p1, p2}, Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;->OnWcPageFinish(Landroid/webkit/WebView;Ljava/lang/String;)V

    .line 92
    :cond_9a
    new-instance v0, Ljava/util/Timer;

    invoke-direct {v0}, Ljava/util/Timer;-><init>()V

    iput-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->doActionsTimer:Ljava/util/Timer;

    .line 93
    new-instance v1, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient$1;

    invoke-direct {v1, p0, p1, p2}, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient$1;-><init>(Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;Landroid/webkit/WebView;Ljava/lang/String;)V

    const-wide/16 p1, 0xc8

    invoke-virtual {v0, v1, p1, p2}, Ljava/util/Timer;->schedule(Ljava/util/TimerTask;J)V

    :cond_ab
    return-void
.end method

.method public onPageStarted(Landroid/webkit/WebView;Ljava/lang/String;Landroid/graphics/Bitmap;)V
    .registers 5

    .line 134
    invoke-super {p0, p1, p2, p3}, Landroid/webkit/WebViewClient;->onPageStarted(Landroid/webkit/WebView;Ljava/lang/String;Landroid/graphics/Bitmap;)V

    .line 137
    iget-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->doActionsTimer:Ljava/util/Timer;

    if-eqz v0, :cond_d

    .line 138
    invoke-virtual {v0}, Ljava/util/Timer;->cancel()V

    const/4 v0, 0x0

    .line 139
    iput-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->doActionsTimer:Ljava/util/Timer;

    .line 142
    :cond_d
    iget-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->mWcListenr:Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;

    if-eqz v0, :cond_14

    .line 144
    invoke-interface {v0, p1, p2, p3}, Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;->OnWcPageStart(Landroid/webkit/WebView;Ljava/lang/String;Landroid/graphics/Bitmap;)V

    .line 146
    :cond_14
    iget-object p3, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->fragment:Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;

    if-eqz p3, :cond_1b

    .line 148
    invoke-virtual {p3, p1, p2}, Lcom/paytm/pgsdk/easypay/actions/EasypayBrowserFragment;->resetActions(Landroid/webkit/WebView;Ljava/lang/String;)V

    :cond_1b
    return-void
.end method

.method public declared-synchronized onReceivedSslError(Landroid/webkit/WebView;Landroid/webkit/SslErrorHandler;Landroid/net/http/SslError;)V
    .registers 5

    monitor-enter p0

    .line 123
    :try_start_1
    iget-object v0, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->mWcListenr:Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;

    if-eqz v0, :cond_8

    .line 125
    invoke-interface {v0, p1, p2, p3}, Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;->OnWcSslError(Landroid/webkit/WebView;Landroid/webkit/SslErrorHandler;Landroid/net/http/SslError;)V

    :cond_8
    if-eqz p2, :cond_d

    .line 129
    invoke-virtual {p2}, Landroid/webkit/SslErrorHandler;->cancel()V
    :try_end_d
    .catchall {:try_start_1 .. :try_end_d} :catchall_f

    .line 130
    :cond_d
    monitor-exit p0

    return-void

    :catchall_f
    move-exception p1

    monitor-exit p0

    throw p1
.end method

.method public registerListener(Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;)V
    .registers 2

    .line 42
    iput-object p1, p0, Lcom/paytm/pgsdk/easypay/clients/EasypayWebViewClient;->mWcListenr:Lcom/paytm/pgsdk/easypay/listeners/WebClientListener;

    return-void
.end method

.method public shouldInterceptRequest(Landroid/webkit/WebView;Landroid/webkit/WebResourceRequest;)Landroid/webkit/WebResourceResponse;
    .registers 3

    .line 55
    invoke-super {p0, p1, p2}, Landroid/webkit/WebViewClient;->shouldInterceptRequest(Landroid/webkit/WebView;Landroid/webkit/WebResourceRequest;)Landroid/webkit/WebResourceResponse;

    move-result-object p1

    return-object p1
.end method

.method public shouldOverrideUrlLoading(Landroid/webkit/WebView;Landroid/webkit/WebResourceRequest;)Z
    .registers 3

    .line 49
    invoke-super {p0, p1, p2}, Landroid/webkit/WebViewClient;->shouldOverrideUrlLoading(Landroid/webkit/WebView;Landroid/webkit/WebResourceRequest;)Z

    move-result p1

    return p1
.end method