azq.smali

.class public Ldxoptimizer/azq;
.super Landroid/database/sqlite/SQLiteOpenHelper;
.source "CloudAppsInfoOpenHelper.java"


# instance fields
.field private a:Landroid/content/Context;


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

    .prologue
    .line 28
    const-string v0, "customapp.db"

    const/4 v1, 0x0

    const/16 v2, 0xe

    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 32
    iput-object p1, p0, Ldxoptimizer/azq;->a:Landroid/content/Context;

    .line 33
    return-void
.end method

.method private static declared-synchronized a(Landroid/content/Context;)V
    .registers 6

    .prologue
    .line 69
    const-class v1, Ldxoptimizer/azq;

    monitor-enter v1

    :try_start_3
    const-string v0, "customapp.db"

    invoke-virtual {p0, v0}, Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;

    move-result-object v0

    .line 70
    invoke-virtual {v0}, Ljava/io/File;->exists()Z

    move-result v2

    if-nez v2, :cond_29

    .line 75
    invoke-virtual {v0}, Ljava/io/File;->getParentFile()Ljava/io/File;

    move-result-object v2

    invoke-virtual {v2}, Ljava/io/File;->exists()Z

    move-result v2

    if-nez v2, :cond_24

    .line 76
    const-string v2, "customapp.db"

    const/4 v3, 0x0

    const/4 v4, 0x0

    invoke-virtual {p0, v2, v3, v4}, Landroid/content/Context;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v2

    invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V

    .line 79
    :cond_24
    invoke-static {p0, v0}, Ldxoptimizer/azq;->a(Landroid/content/Context;Ljava/io/File;)V
    :try_end_27
    .catchall {:try_start_3 .. :try_end_27} :catchall_38

    .line 91
    :cond_27
    :goto_27
    monitor-exit v1

    return-void

    .line 81
    :cond_29
    :try_start_29
    const-string v2, "appmgr_customapp"

    const/4 v3, 0x0

    invoke-static {p0, v2, v3}, Ldxoptimizer/ccm;->b(Landroid/content/Context;Ljava/lang/String;I)I

    move-result v2

    .line 83
    const/16 v3, 0xe

    if-ge v2, v3, :cond_27

    .line 88
    invoke-static {p0, v0}, Ldxoptimizer/azq;->a(Landroid/content/Context;Ljava/io/File;)V
    :try_end_37
    .catchall {:try_start_29 .. :try_end_37} :catchall_38

    goto :goto_27

    .line 69
    :catchall_38
    move-exception v0

    monitor-exit v1

    throw v0
.end method

.method private static a(Landroid/content/Context;Ljava/io/File;)V
    .registers 5

    .prologue
    .line 98
    :try_start_0
    new-instance v0, Ljava/io/File;

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {p1}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, ".tmp"

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

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

    move-result-object v1

    invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    .line 99
    invoke-virtual {p0}, Landroid/content/Context;->getAssets()Landroid/content/res/AssetManager;

    move-result-object v1

    const-string v2, "customapp.db"

    invoke-virtual {v1, v2}, Landroid/content/res/AssetManager;->open(Ljava/lang/String;)Ljava/io/InputStream;

    move-result-object v1

    .line 100
    invoke-static {v1, v0}, Ldxoptimizer/cdp;->a(Ljava/io/InputStream;Ljava/io/File;)V

    .line 102
    invoke-virtual {p1}, Ljava/io/File;->delete()Z

    .line 103
    invoke-virtual {v0, p1}, Ljava/io/File;->renameTo(Ljava/io/File;)Z

    move-result v0

    .line 104
    if-eqz v0, :cond_39

    .line 105
    const-string v0, "appmgr_customapp"

    const/16 v1, 0xe

    invoke-static {p0, v0, v1}, Ldxoptimizer/ccm;->a(Landroid/content/Context;Ljava/lang/String;I)V
    :try_end_39
    .catch Ljava/io/IOException; {:try_start_0 .. :try_end_39} :catch_3a

    .line 116
    :cond_39
    :goto_39
    return-void

    .line 111
    :catch_3a
    move-exception v0

    .line 114
    const-string v1, "CloudAppsInfoOpenHelper"

    const-string v2, "failed to init custom db"

    invoke-static {v1, v2, v0}, Ldxoptimizer/cdx;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V

    goto :goto_39
.end method


# virtual methods
.method public getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
    .registers 2

    .prologue
    .line 55
    iget-object v0, p0, Ldxoptimizer/azq;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/azq;->a(Landroid/content/Context;)V

    .line 56
    invoke-super {p0}, Landroid/database/sqlite/SQLiteOpenHelper;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    return-object v0
.end method

.method public getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
    .registers 2

    .prologue
    .line 61
    iget-object v0, p0, Ldxoptimizer/azq;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/azq;->a(Landroid/content/Context;)V

    .line 62
    invoke-super {p0}, Landroid/database/sqlite/SQLiteOpenHelper;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    return-object v0
.end method

.method public onCreate(Landroid/database/sqlite/SQLiteDatabase;)V
    .registers 2

    .prologue
    .line 38
    invoke-static {p1}, Ldxoptimizer/azo;->a(Landroid/database/sqlite/SQLiteDatabase;)V

    .line 39
    return-void
.end method

.method public onDowngrade(Landroid/database/sqlite/SQLiteDatabase;II)V
    .registers 4

    .prologue
    .line 51
    return-void
.end method

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

    .prologue
    .line 45
    return-void
.end method