aka.smali

.class public Ldxoptimizer/aka;
.super Landroid/database/sqlite/SQLiteOpenHelper;
.source "BootDBOpenHelper.java"


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

    .prologue
    .line 14
    const-string v0, "startup.db"

    const/4 v1, 0x0

    const/4 v2, 0x3

    invoke-direct {p0, p1, v0, v1, v2}, Landroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)V

    .line 15
    return-void
.end method


# virtual methods
.method public onCreate(Landroid/database/sqlite/SQLiteDatabase;)V
    .registers 5

    .prologue
    .line 19
    const-string v0, "CREATE TABLE IF NOT EXISTS whitelist (packageName TEXT primary key,inlist INTEGER DEFAULT 0)"

    .line 20
    const-string v1, "CREATE TABLE IF NOT EXISTS startup_items (packageName TEXT primary key,enabled INTEGER DEFAULT 1)"

    .line 21
    const-string v2, "CREATE TABLE IF NOT EXISTS boot_auto (packageName TEXT primary key,enabled INTEGER DEFAULT 1)"

    .line 23
    :try_start_6
    invoke-virtual {p1, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 24
    invoke-virtual {p1, v1}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 25
    invoke-virtual {p1, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
    :try_end_f
    .catch Landroid/database/sqlite/SQLiteException; {:try_start_6 .. :try_end_f} :catch_10

    .line 29
    :goto_f
    return-void

    .line 26
    :catch_10
    move-exception v0

    .line 27
    invoke-virtual {v0}, Landroid/database/sqlite/SQLiteException;->printStackTrace()V

    goto :goto_f
.end method

.method public onUpgrade(Landroid/database/sqlite/SQLiteDatabase;II)V
    .registers 10

    .prologue
    const/4 v0, 0x2

    const/4 v1, 0x3

    .line 33
    .line 35
    if-ge p2, v0, :cond_35

    .line 36
    const-string v2, "CREATE TABLE IF NOT EXISTS whitelist (packageName TEXT primary key,inlist INTEGER DEFAULT 0)"

    .line 37
    const-string v3, "CREATE TABLE IF NOT EXISTS startup_items (packageName TEXT primary key,enabled INTEGER DEFAULT 1)"

    .line 38
    const-string v4, "INSERT INTO startup_items select DISTINCT packageName,status from deny where status = 0"

    .line 39
    const-string v5, "DROP TABLE IF EXISTS deny"

    .line 40
    invoke-virtual {p1, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 41
    invoke-virtual {p1, v3}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 43
    :try_start_12
    invoke-virtual {p1, v4}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
    :try_end_15
    .catch Ljava/lang/Exception; {:try_start_12 .. :try_end_15} :catch_30

    .line 47
    :goto_15
    invoke-virtual {p1, v5}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 50
    :goto_18
    if-ge v0, v1, :cond_20

    .line 51
    const-string v0, "CREATE TABLE IF NOT EXISTS boot_auto (packageName TEXT primary key,enabled INTEGER DEFAULT 1)"

    .line 52
    invoke-virtual {p1, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    move v0, v1

    .line 55
    :cond_20
    if-eq v0, v1, :cond_2f

    .line 56
    const-string v0, "DROP TABLE IF EXISTS deny"

    invoke-virtual {p1, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 57
    const-string v0, "DROP TABLE IF EXISTS whitelist"

    invoke-virtual {p1, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 58
    invoke-virtual {p0, p1}, Ldxoptimizer/aka;->onCreate(Landroid/database/sqlite/SQLiteDatabase;)V

    .line 60
    :cond_2f
    return-void

    .line 44
    :catch_30
    move-exception v2

    .line 45
    invoke-virtual {v2}, Ljava/lang/Exception;->printStackTrace()V

    goto :goto_15

    :cond_35
    move v0, p2

    goto :goto_18
.end method