a.smali
.class public Lcom/baidu/security/engine/b/a/a;
.super Ljava/lang/Object;
.source "BdeEngineCacheManager.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/baidu/security/engine/b/a/a$a;
}
.end annotation
# static fields
.field private static a:Lcom/baidu/security/engine/b/a/a;
# instance fields
.field private b:Lcom/baidu/security/engine/b/a/a$a;
.field private c:Ljava/util/concurrent/atomic/AtomicInteger;
.field private d:Landroid/database/sqlite/SQLiteDatabase;
# direct methods
.method private constructor <init>()V
.registers 3
.prologue
.line 42
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 30
new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>()V
iput-object v0, p0, Lcom/baidu/security/engine/b/a/a;->c:Ljava/util/concurrent/atomic/AtomicInteger;
.line 43
new-instance v0, Lcom/baidu/security/engine/b/a/a$a;
invoke-static {}, Lcom/baidu/security/b/a;->a()Landroid/content/Context;
move-result-object v1
invoke-direct {v0, v1}, Lcom/baidu/security/engine/b/a/a$a;-><init>(Landroid/content/Context;)V
iput-object v0, p0, Lcom/baidu/security/engine/b/a/a;->b:Lcom/baidu/security/engine/b/a/a$a;
.line 44
return-void
.end method
.method public static a()Lcom/baidu/security/engine/b/a/a;
.registers 2
.prologue
.line 34
const-class v1, Lcom/baidu/security/engine/b/a/a;
monitor-enter v1
.line 35
:try_start_3
sget-object v0, Lcom/baidu/security/engine/b/a/a;->a:Lcom/baidu/security/engine/b/a/a;
if-nez v0, :cond_e
.line 36
new-instance v0, Lcom/baidu/security/engine/b/a/a;
invoke-direct {v0}, Lcom/baidu/security/engine/b/a/a;-><init>()V
sput-object v0, Lcom/baidu/security/engine/b/a/a;->a:Lcom/baidu/security/engine/b/a/a;
.line 38
:cond_e
sget-object v0, Lcom/baidu/security/engine/b/a/a;->a:Lcom/baidu/security/engine/b/a/a;
monitor-exit v1
return-object v0
.line 39
:catchall_12
move-exception v0
monitor-exit v1
:try_end_14
.catchall {:try_start_3 .. :try_end_14} :catchall_12
throw v0
.end method
# virtual methods
.method public a(Ljava/lang/String;)Lcom/baidu/security/engine/b/d/a;
.registers 11
.prologue
const/4 v8, 0x0
.line 114
.line 118
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->b()Landroid/database/sqlite/SQLiteDatabase;
move-result-object v0
.line 120
:try_start_5
const-string v3, "path_md5=? and file_timestamp=? and file_size=? "
.line 123
new-instance v1, Ljava/io/File;
invoke-direct {v1, p1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 124
const/4 v2, 0x3
new-array v4, v2, [Ljava/lang/String;
const/4 v2, 0x0
invoke-static {p1}, Lcom/baidu/security/f/n;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
aput-object v5, v4, v2
const/4 v2, 0x1
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
.line 125
invoke-virtual {v1}, Ljava/io/File;->lastModified()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, ""
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
aput-object v5, v4, v2
const/4 v2, 0x2
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
.line 126
invoke-virtual {v1}, Ljava/io/File;->length()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
const-string v5, ""
invoke-virtual {v1, v5}, 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
aput-object v1, v4, v2
.line 127
const-string v1, "bde_cache_info"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/String;
const/4 v5, 0x0
const-string v6, "result"
aput-object v6, v2, v5
const/4 v5, 0x0
const/4 v6, 0x0
const/4 v7, 0x0
invoke-virtual/range {v0 .. v7}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
:try_end_5a
.catch Ljava/lang/ClassNotFoundException; {:try_start_5 .. :try_end_5a} :catch_8d
.catch Ljava/io/OptionalDataException; {:try_start_5 .. :try_end_5a} :catch_a4
.catch Ljava/io/StreamCorruptedException; {:try_start_5 .. :try_end_5a} :catch_bb
.catch Ljava/io/IOException; {:try_start_5 .. :try_end_5a} :catch_d2
.catchall {:try_start_5 .. :try_end_5a} :catchall_e9
move-result-object v3
.line 130
if-eqz v3, :cond_12a
:try_start_5d
invoke-interface {v3}, Landroid/database/Cursor;->moveToFirst()Z
move-result v0
if-eqz v0, :cond_12a
.line 131
const-string v0, "result"
.line 132
invoke-interface {v3, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v0
.line 131
invoke-interface {v3, v0}, Landroid/database/Cursor;->getBlob(I)[B
move-result-object v0
.line 133
new-instance v2, Ljava/io/ByteArrayInputStream;
invoke-direct {v2, v0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
:try_end_72
.catch Ljava/lang/ClassNotFoundException; {:try_start_5d .. :try_end_72} :catch_11e
.catch Ljava/io/OptionalDataException; {:try_start_5d .. :try_end_72} :catch_115
.catch Ljava/io/StreamCorruptedException; {:try_start_5d .. :try_end_72} :catch_10c
.catch Ljava/io/IOException; {:try_start_5d .. :try_end_72} :catch_103
.catchall {:try_start_5d .. :try_end_72} :catchall_fb
.line 134
:try_start_72
new-instance v1, Ljava/io/ObjectInputStream;
invoke-direct {v1, v2}, Ljava/io/ObjectInputStream;-><init>(Ljava/io/InputStream;)V
:try_end_77
.catch Ljava/lang/ClassNotFoundException; {:try_start_72 .. :try_end_77} :catch_123
.catch Ljava/io/OptionalDataException; {:try_start_72 .. :try_end_77} :catch_119
.catch Ljava/io/StreamCorruptedException; {:try_start_72 .. :try_end_77} :catch_110
.catch Ljava/io/IOException; {:try_start_72 .. :try_end_77} :catch_107
.catchall {:try_start_72 .. :try_end_77} :catchall_fe
.line 135
:try_start_77
invoke-virtual {v1}, Ljava/io/ObjectInputStream;->readObject()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/baidu/security/engine/b/d/a;
:try_end_7d
.catch Ljava/lang/ClassNotFoundException; {:try_start_77 .. :try_end_7d} :catch_127
.catch Ljava/io/OptionalDataException; {:try_start_77 .. :try_end_7d} :catch_11c
.catch Ljava/io/StreamCorruptedException; {:try_start_77 .. :try_end_7d} :catch_113
.catch Ljava/io/IOException; {:try_start_77 .. :try_end_7d} :catch_10a
.catchall {:try_start_77 .. :try_end_7d} :catchall_100
move-object v8, v1
.line 146
:goto_7e
if-eqz v3, :cond_83
.line 147
invoke-interface {v3}, Landroid/database/Cursor;->close()V
.line 149
:cond_83
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 150
invoke-static {v2}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 151
invoke-static {v8}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 153
:goto_8c
return-object v0
.line 137
:catch_8d
move-exception v0
move-object v1, v8
move-object v2, v8
move-object v3, v8
.line 138
:goto_91
:try_start_91
invoke-virtual {v0}, Ljava/lang/ClassNotFoundException;->printStackTrace()V
:try_end_94
.catchall {:try_start_91 .. :try_end_94} :catchall_100
.line 146
if-eqz v3, :cond_99
.line 147
invoke-interface {v3}, Landroid/database/Cursor;->close()V
.line 149
:cond_99
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 150
invoke-static {v2}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 151
invoke-static {v1}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
move-object v0, v8
.line 152
goto :goto_8c
.line 139
:catch_a4
move-exception v0
move-object v1, v8
move-object v2, v8
move-object v3, v8
.line 140
:goto_a8
:try_start_a8
invoke-virtual {v0}, Ljava/io/OptionalDataException;->printStackTrace()V
:try_end_ab
.catchall {:try_start_a8 .. :try_end_ab} :catchall_100
.line 146
if-eqz v3, :cond_b0
.line 147
invoke-interface {v3}, Landroid/database/Cursor;->close()V
.line 149
:cond_b0
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 150
invoke-static {v2}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 151
invoke-static {v1}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
move-object v0, v8
.line 152
goto :goto_8c
.line 141
:catch_bb
move-exception v0
move-object v1, v8
move-object v2, v8
move-object v3, v8
.line 142
:goto_bf
:try_start_bf
invoke-virtual {v0}, Ljava/io/StreamCorruptedException;->printStackTrace()V
:try_end_c2
.catchall {:try_start_bf .. :try_end_c2} :catchall_100
.line 146
if-eqz v3, :cond_c7
.line 147
invoke-interface {v3}, Landroid/database/Cursor;->close()V
.line 149
:cond_c7
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 150
invoke-static {v2}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 151
invoke-static {v1}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
move-object v0, v8
.line 152
goto :goto_8c
.line 143
:catch_d2
move-exception v0
move-object v1, v8
move-object v2, v8
move-object v3, v8
.line 144
:goto_d6
:try_start_d6
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
:try_end_d9
.catchall {:try_start_d6 .. :try_end_d9} :catchall_100
.line 146
if-eqz v3, :cond_de
.line 147
invoke-interface {v3}, Landroid/database/Cursor;->close()V
.line 149
:cond_de
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 150
invoke-static {v2}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 151
invoke-static {v1}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
move-object v0, v8
.line 152
goto :goto_8c
.line 146
:catchall_e9
move-exception v0
move-object v2, v8
move-object v3, v8
:goto_ec
if-eqz v3, :cond_f1
.line 147
invoke-interface {v3}, Landroid/database/Cursor;->close()V
.line 149
:cond_f1
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 150
invoke-static {v2}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 151
invoke-static {v8}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
throw v0
.line 146
:catchall_fb
move-exception v0
move-object v2, v8
goto :goto_ec
:catchall_fe
move-exception v0
goto :goto_ec
:catchall_100
move-exception v0
move-object v8, v1
goto :goto_ec
.line 143
:catch_103
move-exception v0
move-object v1, v8
move-object v2, v8
goto :goto_d6
:catch_107
move-exception v0
move-object v1, v8
goto :goto_d6
:catch_10a
move-exception v0
goto :goto_d6
.line 141
:catch_10c
move-exception v0
move-object v1, v8
move-object v2, v8
goto :goto_bf
:catch_110
move-exception v0
move-object v1, v8
goto :goto_bf
:catch_113
move-exception v0
goto :goto_bf
.line 139
:catch_115
move-exception v0
move-object v1, v8
move-object v2, v8
goto :goto_a8
:catch_119
move-exception v0
move-object v1, v8
goto :goto_a8
:catch_11c
move-exception v0
goto :goto_a8
.line 137
:catch_11e
move-exception v0
move-object v1, v8
move-object v2, v8
goto/16 :goto_91
:catch_123
move-exception v0
move-object v1, v8
goto/16 :goto_91
:catch_127
move-exception v0
goto/16 :goto_91
:cond_12a
move-object v2, v8
move-object v0, v8
goto/16 :goto_7e
.end method
.method public a(Ljava/util/List;)V
.registers 14
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List",
"<",
"Lcom/baidu/security/engine/b/d/a;",
">;)V"
}
.end annotation
.prologue
const/4 v9, 0x0
.line 209
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->b()Landroid/database/sqlite/SQLiteDatabase;
move-result-object v0
.line 211
if-eqz p1, :cond_153
.line 212
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
.line 214
:try_start_a
invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
:try_end_d
.catchall {:try_start_a .. :try_end_d} :catchall_154
move-result-object v10
move-object v8, v9
:cond_f
:goto_f
:try_start_f
invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_145
invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/baidu/security/engine/b/d/a;
:try_end_1b
.catchall {:try_start_f .. :try_end_1b} :catchall_12d
.line 219
:try_start_1b
new-instance v4, Ljava/io/ByteArrayOutputStream;
invoke-direct {v4}, Ljava/io/ByteArrayOutputStream;-><init>()V
:try_end_20
.catch Ljava/io/IOException; {:try_start_1b .. :try_end_20} :catch_114
.catchall {:try_start_1b .. :try_end_20} :catchall_123
.line 220
:try_start_20
new-instance v3, Ljava/io/ObjectOutputStream;
invoke-direct {v3, v4}, Ljava/io/ObjectOutputStream;-><init>(Ljava/io/OutputStream;)V
:try_end_25
.catch Ljava/io/IOException; {:try_start_20 .. :try_end_25} :catch_15c
.catchall {:try_start_20 .. :try_end_25} :catchall_157
.line 221
:try_start_25
invoke-virtual {v3, v1}, Ljava/io/ObjectOutputStream;->writeObject(Ljava/lang/Object;)V
.line 222
invoke-virtual {v3}, Ljava/io/ObjectOutputStream;->flush()V
.line 223
invoke-virtual {v4}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
:try_end_2e
.catch Ljava/io/IOException; {:try_start_25 .. :try_end_2e} :catch_15f
.catchall {:try_start_25 .. :try_end_2e} :catchall_15a
move-result-object v2
.line 227
:try_start_2f
invoke-static {v4}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 228
invoke-static {v3}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 230
:goto_35
if-eqz v2, :cond_161
array-length v3, v2
if-lez v3, :cond_161
.line 231
new-instance v11, Landroid/content/ContentValues;
invoke-direct {v11}, Landroid/content/ContentValues;-><init>()V
.line 232
const-string v3, "path_md5"
invoke-virtual {v1}, Lcom/baidu/security/engine/b/d/a;->b()Ljava/lang/String;
move-result-object v4
invoke-static {v4}, Lcom/baidu/security/f/n;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
invoke-virtual {v11, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
.line 233
const-string v3, "file_timestamp"
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
new-instance v5, Ljava/io/File;
.line 234
invoke-virtual {v1}, Lcom/baidu/security/engine/b/d/a;->b()Ljava/lang/String;
move-result-object v6
invoke-direct {v5, v6}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-virtual {v5}, Ljava/io/File;->lastModified()J
move-result-wide v6
invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, ""
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
.line 233
invoke-virtual {v11, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
.line 235
const-string v3, "file_size"
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
new-instance v5, Ljava/io/File;
invoke-virtual {v1}, Lcom/baidu/security/engine/b/d/a;->b()Ljava/lang/String;
move-result-object v6
invoke-direct {v5, v6}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-virtual {v5}, Ljava/io/File;->length()J
move-result-wide v6
invoke-virtual {v4, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v4
const-string v5, ""
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v11, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
.line 236
const-string v3, "result"
invoke-virtual {v11, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;[B)V
.line 239
new-instance v2, Ljava/io/File;
invoke-virtual {v1}, Lcom/baidu/security/engine/b/d/a;->b()Ljava/lang/String;
move-result-object v3
invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 240
invoke-virtual {v2}, Ljava/io/File;->exists()Z
move-result v3
if-eqz v3, :cond_f
.line 243
const-string v3, "path_md5=? and file_timestamp=? and file_size=? "
.line 247
const/4 v4, 0x3
new-array v4, v4, [Ljava/lang/String;
const/4 v5, 0x0
invoke-virtual {v1}, Lcom/baidu/security/engine/b/d/a;->b()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/baidu/security/f/n;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
aput-object v1, v4, v5
const/4 v1, 0x1
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
.line 248
invoke-virtual {v2}, Ljava/io/File;->lastModified()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, ""
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
aput-object v5, v4, v1
const/4 v1, 0x2
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
.line 249
invoke-virtual {v2}, Ljava/io/File;->length()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v2
const-string v5, ""
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
aput-object v2, v4, v1
.line 250
const-string v1, "bde_cache_info"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/String;
const/4 v5, 0x0
const-string v6, "result"
aput-object v6, v2, v5
const/4 v5, 0x0
const/4 v6, 0x0
const/4 v7, 0x0
invoke-virtual/range {v0 .. v7}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
:try_end_fe
.catchall {:try_start_2f .. :try_end_fe} :catchall_12d
move-result-object v1
.line 253
if-eqz v1, :cond_13a
:try_start_101
invoke-interface {v1}, Landroid/database/Cursor;->moveToFirst()Z
move-result v2
if-eqz v2, :cond_13a
.line 254
const-string v2, "bde_cache_info"
invoke-virtual {v0, v2, v11, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
.line 258
:goto_10c
if-eqz v1, :cond_111
.line 259
invoke-interface {v1}, Landroid/database/Cursor;->close()V
:try_end_111
.catchall {:try_start_101 .. :try_end_111} :catchall_141
:cond_111
:goto_111
move-object v8, v1
.line 262
goto/16 :goto_f
.line 224
:catch_114
move-exception v2
move-object v3, v9
move-object v4, v9
.line 225
:goto_117
:try_start_117
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_11a
.catchall {:try_start_117 .. :try_end_11a} :catchall_15a
.line 227
:try_start_11a
invoke-static {v4}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 228
invoke-static {v3}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
move-object v2, v9
.line 229
goto/16 :goto_35
.line 227
:catchall_123
move-exception v1
move-object v3, v9
move-object v4, v9
:goto_126
invoke-static {v4}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
.line 228
invoke-static {v3}, Lcom/baidu/security/f/j;->a(Ljava/io/Closeable;)V
throw v1
:try_end_12d
.catchall {:try_start_11a .. :try_end_12d} :catchall_12d
.line 265
:catchall_12d
move-exception v1
:goto_12e
if-eqz v8, :cond_133
.line 266
invoke-interface {v8}, Landroid/database/Cursor;->close()V
.line 268
:cond_133
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
.line 269
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
throw v1
.line 256
:cond_13a
:try_start_13a
const-string v2, "bde_cache_info"
const/4 v3, 0x0
invoke-virtual {v0, v2, v3, v11}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
:try_end_140
.catchall {:try_start_13a .. :try_end_140} :catchall_141
goto :goto_10c
.line 265
:catchall_141
move-exception v2
move-object v8, v1
move-object v1, v2
goto :goto_12e
.line 263
:cond_145
:try_start_145
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
:try_end_148
.catchall {:try_start_145 .. :try_end_148} :catchall_12d
.line 265
if-eqz v8, :cond_14d
.line 266
invoke-interface {v8}, Landroid/database/Cursor;->close()V
.line 268
:cond_14d
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
.line 269
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 272
:cond_153
return-void
.line 265
:catchall_154
move-exception v1
move-object v8, v9
goto :goto_12e
.line 227
:catchall_157
move-exception v1
move-object v3, v9
goto :goto_126
:catchall_15a
move-exception v1
goto :goto_126
.line 224
:catch_15c
move-exception v2
move-object v3, v9
goto :goto_117
:catch_15f
move-exception v2
goto :goto_117
:cond_161
move-object v1, v8
goto :goto_111
.end method
.method public declared-synchronized b()Landroid/database/sqlite/SQLiteDatabase;
.registers 3
.prologue
.line 47
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/baidu/security/engine/b/a/a;->c:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->incrementAndGet()I
move-result v0
const/4 v1, 0x1
if-ne v0, v1, :cond_12
.line 49
iget-object v0, p0, Lcom/baidu/security/engine/b/a/a;->b:Lcom/baidu/security/engine/b/a/a$a;
invoke-virtual {v0}, Lcom/baidu/security/engine/b/a/a$a;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
move-result-object v0
iput-object v0, p0, Lcom/baidu/security/engine/b/a/a;->d:Landroid/database/sqlite/SQLiteDatabase;
.line 51
:cond_12
iget-object v0, p0, Lcom/baidu/security/engine/b/a/a;->d:Landroid/database/sqlite/SQLiteDatabase;
:try_end_14
.catchall {:try_start_1 .. :try_end_14} :catchall_16
monitor-exit p0
return-object v0
.line 47
:catchall_16
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized c()V
.registers 2
.prologue
.line 55
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/baidu/security/engine/b/a/a;->c:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->decrementAndGet()I
move-result v0
if-nez v0, :cond_e
.line 57
iget-object v0, p0, Lcom/baidu/security/engine/b/a/a;->d:Landroid/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:try_end_e
.catchall {:try_start_1 .. :try_end_e} :catchall_10
.line 59
:cond_e
monitor-exit p0
return-void
.line 55
:catchall_10
move-exception v0
monitor-exit p0
throw v0
.end method
.method public d()V
.registers 3
.prologue
.line 275
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->b()Landroid/database/sqlite/SQLiteDatabase;
move-result-object v0
.line 276
const-string v1, "delete from bde_cache_info"
invoke-virtual {v0, v1}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
.line 277
invoke-virtual {p0}, Lcom/baidu/security/engine/b/a/a;->c()V
.line 278
return-void
.end method