zzem.smali
.class final Lcom/google/android/gms/measurement/internal/zzem;
.super Landroid/database/sqlite/SQLiteOpenHelper;
.source "SourceFile"
# instance fields
.field private final synthetic zza:Lcom/google/android/gms/measurement/internal/zzen;
# direct methods
.method constructor <init>(Lcom/google/android/gms/measurement/internal/zzen;Landroid/content/Context;Ljava/lang/String;)V
.registers 5
.line 1
iput-object p1, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
const/4 p1, 0x0
const/4 v0, 0x1
.line 2
invoke-direct {p0, p2, p3, p1, v0}, Landroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)V
return-void
.end method
# virtual methods
.method public final getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/database/sqlite/SQLiteException;
}
.end annotation
.line 4
:try_start_0
invoke-super {p0}, Landroid/database/sqlite/SQLiteOpenHelper;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
move-result-object v0
:try_end_4
.catch Landroid/database/sqlite/SQLiteDatabaseLockedException; {:try_start_0 .. :try_end_4} :catch_4c
.catch Landroid/database/sqlite/SQLiteException; {:try_start_0 .. :try_end_4} :catch_5
return-object v0
.line 7
:catch_5
iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzgo;->zzq()Lcom/google/android/gms/measurement/internal/zzer;
move-result-object v0
invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzer;->zze()Lcom/google/android/gms/measurement/internal/zzet;
move-result-object v0
const-string v1, "Opening the local database failed, dropping and recreating it"
invoke-virtual {v0, v1}, Lcom/google/android/gms/measurement/internal/zzet;->zza(Ljava/lang/String;)V
const-string v0, "google_app_measurement_local.db"
.line 10
iget-object v1, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzgo;->zzm()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1, v0}, Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;
move-result-object v1
invoke-virtual {v1}, Ljava/io/File;->delete()Z
move-result v1
if-nez v1, :cond_35
.line 11
iget-object v1, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzgo;->zzq()Lcom/google/android/gms/measurement/internal/zzer;
move-result-object v1
invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzer;->zze()Lcom/google/android/gms/measurement/internal/zzet;
move-result-object v1
const-string v2, "Failed to delete corrupted local db file"
invoke-virtual {v1, v2, v0}, Lcom/google/android/gms/measurement/internal/zzet;->zza(Ljava/lang/String;Ljava/lang/Object;)V
.line 12
:cond_35
:try_start_35
invoke-super {p0}, Landroid/database/sqlite/SQLiteOpenHelper;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
move-result-object v0
:try_end_39
.catch Landroid/database/sqlite/SQLiteException; {:try_start_35 .. :try_end_39} :catch_3a
return-object v0
:catch_3a
move-exception v0
.line 14
iget-object v1, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzgo;->zzq()Lcom/google/android/gms/measurement/internal/zzer;
move-result-object v1
.line 15
invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzer;->zze()Lcom/google/android/gms/measurement/internal/zzet;
move-result-object v1
const-string v2, "Failed to open local database. Events will bypass local storage"
.line 16
invoke-virtual {v1, v2, v0}, Lcom/google/android/gms/measurement/internal/zzet;->zza(Ljava/lang/String;Ljava/lang/Object;)V
const/4 v0, 0x0
return-object v0
:catch_4c
move-exception v0
.line 5
throw v0
.end method
.method public final onCreate(Landroid/database/sqlite/SQLiteDatabase;)V
.registers 3
.line 22
iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzgo;->zzq()Lcom/google/android/gms/measurement/internal/zzer;
move-result-object v0
invoke-static {v0, p1}, Lcom/google/android/gms/measurement/internal/zzag;->zza(Lcom/google/android/gms/measurement/internal/zzer;Landroid/database/sqlite/SQLiteDatabase;)V
return-void
.end method
.method public final onDowngrade(Landroid/database/sqlite/SQLiteDatabase;II)V
.registers 4
return-void
.end method
.method public final onOpen(Landroid/database/sqlite/SQLiteDatabase;)V
.registers 9
.line 18
iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzem;->zza:Lcom/google/android/gms/measurement/internal/zzen;
.line 19
invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzgo;->zzq()Lcom/google/android/gms/measurement/internal/zzer;
move-result-object v1
const-string v3, "messages"
const-string v4, "create table if not exists messages ( type INTEGER NOT NULL, entry BLOB NOT NULL)"
const-string v5, "type,entry"
const/4 v6, 0x0
move-object v2, p1
.line 20
invoke-static/range {v1 .. v6}, Lcom/google/android/gms/measurement/internal/zzag;->zza(Lcom/google/android/gms/measurement/internal/zzer;Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
return-void
.end method
.method public final onUpgrade(Landroid/database/sqlite/SQLiteDatabase;II)V
.registers 4
return-void
.end method