KeepAliveTimerTask.smali

.class public Lcom/quickbird/sdk/internal/KeepAliveTimerTask;
.super Ljava/util/TimerTask;
.source "KeepAliveTimerTask.java"


# static fields
.field public static final VPN_DAEMON_INTERVAL:I = 0x1388


# instance fields
.field private mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

.field private mcContext:Landroid/content/Context;


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 3

    .prologue
    .line 26
    invoke-direct {p0}, Ljava/util/TimerTask;-><init>()V

    .line 27
    iput-object p1, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mcContext:Landroid/content/Context;

    .line 28
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mcContext:Landroid/content/Context;

    invoke-static {v0}, Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;->getInstance(Landroid/content/Context;)Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    move-result-object v0

    iput-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    .line 29
    return-void
.end method

.method private keepAlive()V
    .registers 3

    .prologue
    .line 53
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mcContext:Landroid/content/Context;

    invoke-static {v0}, Lcom/quickbird/sdk/NetChangeReceiver;->checkNetType(Landroid/content/Context;)Lcom/quickbird/sdk/NetChangeReceiver$NetType;

    move-result-object v0

    .line 55
    sget-object v1, Lcom/quickbird/sdk/NetChangeReceiver$NetType;->NET_TYPE_NET:Lcom/quickbird/sdk/NetChangeReceiver$NetType;

    if-ne v0, v1, :cond_18

    .line 56
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mcContext:Landroid/content/Context;

    invoke-static {v0}, Lcom/quickbird/mini/vpn/vpn/LocalVpnService;->isVpnConnected(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_17

    .line 57
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    invoke-virtual {v0}, Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;->startVpnService()V

    .line 64
    :cond_17
    :goto_17
    return-void

    .line 59
    :cond_18
    sget-object v1, Lcom/quickbird/sdk/NetChangeReceiver$NetType;->NET_TYPE_NULL:Lcom/quickbird/sdk/NetChangeReceiver$NetType;

    if-eq v0, v1, :cond_17

    .line 60
    invoke-static {}, Lcom/quickbird/mini/vpn/vpn/LocalVpnService;->isVpnPaused()Z

    move-result v0

    if-nez v0, :cond_17

    .line 61
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    invoke-virtual {v0}, Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;->pauseVpnService()V

    goto :goto_17
.end method


# virtual methods
.method public run()V
    .registers 2

    .prologue
    .line 35
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    invoke-virtual {v0}, Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;->isVpnServiceAutoStart()Z

    move-result v0

    if-nez v0, :cond_9

    .line 50
    :cond_8
    :goto_8
    return-void

    .line 40
    :cond_9
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    invoke-virtual {v0}, Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;->isApproved()Z

    move-result v0

    if-eqz v0, :cond_8

    .line 45
    iget-object v0, p0, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->mVPNSManager:Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;

    invoke-virtual {v0}, Lcom/quickbird/mini/vpn/vpn/VpnServiceManager;->isVpnOpened()Z

    move-result v0

    if-nez v0, :cond_8

    .line 49
    invoke-direct {p0}, Lcom/quickbird/sdk/internal/KeepAliveTimerTask;->keepAlive()V

    goto :goto_8
.end method