This commit is contained in:
aliveoutside
2022-03-24 19:37:43 +03:00
commit c07fccf607
37650 changed files with 6680799 additions and 0 deletions
@@ -0,0 +1,28 @@
.class public final Lorg/sqlite/database/BuildConfig;
.super Ljava/lang/Object;
.source "BuildConfig.java"
# static fields
.field public static final APPLICATION_ID:Ljava/lang/String; = "org.sqlite.database"
.field public static final BUILD_TYPE:Ljava/lang/String; = "release"
.field public static final DEBUG:Z = false
.field public static final FLAVOR:Ljava/lang/String; = ""
.field public static final VERSION_CODE:I = 0x1
.field public static final VERSION_NAME:Ljava/lang/String; = "1.0"
# direct methods
.method public constructor <init>()V
.locals 0
.line 6
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
@@ -0,0 +1,8 @@
.class public interface abstract Lorg/sqlite/database/DatabaseErrorHandler;
.super Ljava/lang/Object;
.source "DatabaseErrorHandler.java"
# virtual methods
.method public abstract onCorruption(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,282 @@
.class public final Lorg/sqlite/database/DefaultDatabaseErrorHandler;
.super Ljava/lang/Object;
.source "DefaultDatabaseErrorHandler.java"
# interfaces
.implements Lorg/sqlite/database/DatabaseErrorHandler;
# static fields
.field private static final TAG:Ljava/lang/String; = "DefaultDatabaseErrorHandler"
# direct methods
.method public constructor <init>()V
.locals 0
.line 49
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private deleteDatabaseFile(Ljava/lang/String;)V
.locals 3
const-string v0, ":memory:"
.line 106
invoke-virtual {p1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_1
invoke-virtual {p1}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_0
goto :goto_1
:cond_0
const-string v0, "DefaultDatabaseErrorHandler"
.line 109
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "deleting the database file: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 111
:try_start_0
new-instance v0, Ljava/io/File;
invoke-direct {v0, p1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->deleteDatabase(Ljava/io/File;)Z
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception p1
const-string v0, "DefaultDatabaseErrorHandler"
.line 114
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "delete failed: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object p1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v0, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:goto_0
return-void
:cond_1
:goto_1
return-void
.end method
# virtual methods
.method public onCorruption(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.locals 3
const-string v0, "DefaultDatabaseErrorHandler"
.line 59
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Corruption reported by sqlite on database: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getPath()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 63
invoke-static {}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->hasCodec()Z
move-result v0
if-eqz v0, :cond_0
return-void
.line 66
:cond_0
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-nez v0, :cond_1
.line 73
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getPath()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Lorg/sqlite/database/DefaultDatabaseErrorHandler;->deleteDatabaseFile(Ljava/lang/String;)V
return-void
:cond_1
const/4 v0, 0x0
.line 82
:try_start_0
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getAttachedDbs()Ljava/util/List;
move-result-object v1
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
move-object v0, v1
goto :goto_0
:catchall_0
move-exception v1
goto :goto_1
.line 87
:catch_0
:goto_0
:try_start_1
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->close()V
:try_end_1
.catch Lorg/sqlite/database/sqlite/SQLiteException; {:try_start_1 .. :try_end_1} :catch_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
goto :goto_3
:goto_1
if-eqz v0, :cond_2
.line 94
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p1
:goto_2
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_3
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/util/Pair;
.line 95
iget-object v0, v0, Landroid/util/Pair;->second:Ljava/lang/Object;
check-cast v0, Ljava/lang/String;
invoke-direct {p0, v0}, Lorg/sqlite/database/DefaultDatabaseErrorHandler;->deleteDatabaseFile(Ljava/lang/String;)V
goto :goto_2
.line 100
:cond_2
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getPath()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Lorg/sqlite/database/DefaultDatabaseErrorHandler;->deleteDatabaseFile(Ljava/lang/String;)V
.line 102
:cond_3
throw v1
:catch_1
:goto_3
if-eqz v0, :cond_4
.line 94
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p1
:goto_4
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_5
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/util/Pair;
.line 95
iget-object v0, v0, Landroid/util/Pair;->second:Ljava/lang/Object;
check-cast v0, Ljava/lang/String;
invoke-direct {p0, v0}, Lorg/sqlite/database/DefaultDatabaseErrorHandler;->deleteDatabaseFile(Ljava/lang/String;)V
goto :goto_4
.line 100
:cond_4
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getPath()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Lorg/sqlite/database/DefaultDatabaseErrorHandler;->deleteDatabaseFile(Ljava/lang/String;)V
:cond_5
return-void
.end method
@@ -0,0 +1,48 @@
.class final Lorg/sqlite/database/sqlite/CloseGuard$DefaultReporter;
.super Ljava/lang/Object;
.source "CloseGuard.java"
# interfaces
.implements Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lorg/sqlite/database/sqlite/CloseGuard;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1a
name = "DefaultReporter"
.end annotation
# direct methods
.method private constructor <init>()V
.locals 0
.line 230
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method synthetic constructor <init>(Lorg/sqlite/database/sqlite/CloseGuard$1;)V
.locals 0
.line 230
invoke-direct {p0}, Lorg/sqlite/database/sqlite/CloseGuard$DefaultReporter;-><init>()V
return-void
.end method
# virtual methods
.method public report(Ljava/lang/String;Ljava/lang/Throwable;)V
.locals 0
.line 232
invoke-static {p1, p2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/Throwable;)I
return-void
.end method
@@ -0,0 +1,19 @@
.class public interface abstract Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
.super Ljava/lang/Object;
.source "CloseGuard.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lorg/sqlite/database/sqlite/CloseGuard;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "Reporter"
.end annotation
# virtual methods
.method public abstract report(Ljava/lang/String;Ljava/lang/Throwable;)V
.end method
@@ -0,0 +1,222 @@
.class public final Lorg/sqlite/database/sqlite/CloseGuard;
.super Ljava/lang/Object;
.source "CloseGuard.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lorg/sqlite/database/sqlite/CloseGuard$DefaultReporter;,
Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
}
.end annotation
# static fields
.field private static volatile ENABLED:Z = true
.field private static final NOOP:Lorg/sqlite/database/sqlite/CloseGuard;
.field private static volatile REPORTER:Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
# instance fields
.field private allocationSite:Ljava/lang/Throwable;
# direct methods
.method static constructor <clinit>()V
.locals 2
.line 115
new-instance v0, Lorg/sqlite/database/sqlite/CloseGuard;
invoke-direct {v0}, Lorg/sqlite/database/sqlite/CloseGuard;-><init>()V
sput-object v0, Lorg/sqlite/database/sqlite/CloseGuard;->NOOP:Lorg/sqlite/database/sqlite/CloseGuard;
.line 127
new-instance v0, Lorg/sqlite/database/sqlite/CloseGuard$DefaultReporter;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lorg/sqlite/database/sqlite/CloseGuard$DefaultReporter;-><init>(Lorg/sqlite/database/sqlite/CloseGuard$1;)V
sput-object v0, Lorg/sqlite/database/sqlite/CloseGuard;->REPORTER:Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 168
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static get()Lorg/sqlite/database/sqlite/CloseGuard;
.locals 1
.line 136
sget-boolean v0, Lorg/sqlite/database/sqlite/CloseGuard;->ENABLED:Z
if-nez v0, :cond_0
.line 137
sget-object v0, Lorg/sqlite/database/sqlite/CloseGuard;->NOOP:Lorg/sqlite/database/sqlite/CloseGuard;
return-object v0
.line 139
:cond_0
new-instance v0, Lorg/sqlite/database/sqlite/CloseGuard;
invoke-direct {v0}, Lorg/sqlite/database/sqlite/CloseGuard;-><init>()V
return-object v0
.end method
.method public static getReporter()Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
.locals 1
.line 165
sget-object v0, Lorg/sqlite/database/sqlite/CloseGuard;->REPORTER:Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
return-object v0
.end method
.method public static setEnabled(Z)V
.locals 0
.line 147
sput-boolean p0, Lorg/sqlite/database/sqlite/CloseGuard;->ENABLED:Z
return-void
.end method
.method public static setReporter(Lorg/sqlite/database/sqlite/CloseGuard$Reporter;)V
.locals 1
if-nez p0, :cond_0
.line 156
new-instance p0, Ljava/lang/NullPointerException;
const-string v0, "reporter == null"
invoke-direct {p0, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p0
.line 158
:cond_0
sput-object p0, Lorg/sqlite/database/sqlite/CloseGuard;->REPORTER:Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
return-void
.end method
# virtual methods
.method public close()V
.locals 1
const/4 v0, 0x0
.line 199
iput-object v0, p0, Lorg/sqlite/database/sqlite/CloseGuard;->allocationSite:Ljava/lang/Throwable;
return-void
.end method
.method public open(Ljava/lang/String;)V
.locals 2
if-nez p1, :cond_0
.line 182
new-instance p1, Ljava/lang/NullPointerException;
const-string v0, "closer == null"
invoke-direct {p1, v0}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.line 185
:cond_0
sget-object v0, Lorg/sqlite/database/sqlite/CloseGuard;->NOOP:Lorg/sqlite/database/sqlite/CloseGuard;
if-eq p0, v0, :cond_2
sget-boolean v0, Lorg/sqlite/database/sqlite/CloseGuard;->ENABLED:Z
if-nez v0, :cond_1
goto :goto_0
.line 188
:cond_1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Explicit termination method \'"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "\' not called"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
.line 189
new-instance v0, Ljava/lang/Throwable;
invoke-direct {v0, p1}, Ljava/lang/Throwable;-><init>(Ljava/lang/String;)V
iput-object v0, p0, Lorg/sqlite/database/sqlite/CloseGuard;->allocationSite:Ljava/lang/Throwable;
return-void
:cond_2
:goto_0
return-void
.end method
.method public warnIfOpen()V
.locals 3
.line 209
iget-object v0, p0, Lorg/sqlite/database/sqlite/CloseGuard;->allocationSite:Ljava/lang/Throwable;
if-eqz v0, :cond_1
sget-boolean v0, Lorg/sqlite/database/sqlite/CloseGuard;->ENABLED:Z
if-nez v0, :cond_0
goto :goto_0
:cond_0
const-string v0, "A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks."
.line 217
sget-object v1, Lorg/sqlite/database/sqlite/CloseGuard;->REPORTER:Lorg/sqlite/database/sqlite/CloseGuard$Reporter;
iget-object v2, p0, Lorg/sqlite/database/sqlite/CloseGuard;->allocationSite:Ljava/lang/Throwable;
invoke-interface {v1, v0, v2}, Lorg/sqlite/database/sqlite/CloseGuard$Reporter;->report(Ljava/lang/String;Ljava/lang/Throwable;)V
return-void
:cond_1
:goto_0
return-void
.end method
@@ -0,0 +1,207 @@
.class public abstract Lorg/sqlite/database/sqlite/SQLiteClosable;
.super Ljava/lang/Object;
.source "SQLiteClosable.java"
# interfaces
.implements Ljava/io/Closeable;
# instance fields
.field private mReferenceCount:I
# direct methods
.method public constructor <init>()V
.locals 1
.line 30
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x1
.line 31
iput v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
return-void
.end method
# virtual methods
.method public acquireReference()V
.locals 3
.line 57
monitor-enter p0
.line 58
:try_start_0
iget v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
if-gtz v0, :cond_0
.line 59
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "attempt to re-open an already-closed object: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 62
:cond_0
iget v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
.line 63
monitor-exit p0
return-void
:catchall_0
move-exception v0
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v0
.end method
.method public close()V
.locals 0
.line 110
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteClosable;->releaseReference()V
return-void
.end method
.method protected abstract onAllReferencesReleased()V
.end method
.method protected onAllReferencesReleasedFromContainer()V
.locals 0
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 47
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteClosable;->onAllReferencesReleased()V
return-void
.end method
.method public releaseReference()V
.locals 2
.line 74
monitor-enter p0
.line 75
:try_start_0
iget v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
const/4 v1, 0x1
sub-int/2addr v0, v1
iput v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
if-nez v0, :cond_0
goto :goto_0
:cond_0
const/4 v1, 0x0
.line 76
:goto_0
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-eqz v1, :cond_1
.line 78
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteClosable;->onAllReferencesReleased()V
:cond_1
return-void
:catchall_0
move-exception v0
.line 76
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v0
.end method
.method public releaseReferenceFromContainer()V
.locals 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 92
monitor-enter p0
.line 93
:try_start_0
iget v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
const/4 v1, 0x1
sub-int/2addr v0, v1
iput v0, p0, Lorg/sqlite/database/sqlite/SQLiteClosable;->mReferenceCount:I
if-nez v0, :cond_0
goto :goto_0
:cond_0
const/4 v1, 0x0
.line 94
:goto_0
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-eqz v1, :cond_1
.line 96
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteClosable;->onAllReferencesReleasedFromContainer()V
:cond_1
return-void
:catchall_0
move-exception v0
.line 94
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v0
.end method
@@ -0,0 +1,89 @@
.class Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;
.super Ljava/lang/Object;
.source "SQLiteConnectionPool.java"
# interfaces
.implements Landroid/os/CancellationSignal$OnCancelListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lorg/sqlite/database/sqlite/SQLiteConnectionPool;->waitForConnection(Ljava/lang/String;ILandroid/os/CancellationSignal;)Lorg/sqlite/database/sqlite/SQLiteConnection;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Lorg/sqlite/database/sqlite/SQLiteConnectionPool;
.field final synthetic val$nonce:I
.field final synthetic val$waiter:Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;
# direct methods
.method constructor <init>(Lorg/sqlite/database/sqlite/SQLiteConnectionPool;Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;I)V
.locals 0
.line 648
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->this$0:Lorg/sqlite/database/sqlite/SQLiteConnectionPool;
iput-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->val$waiter:Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;
iput p3, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->val$nonce:I
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onCancel()V
.locals 3
.line 651
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->this$0:Lorg/sqlite/database/sqlite/SQLiteConnectionPool;
invoke-static {v0}, Lorg/sqlite/database/sqlite/SQLiteConnectionPool;->access$000(Lorg/sqlite/database/sqlite/SQLiteConnectionPool;)Ljava/lang/Object;
move-result-object v0
monitor-enter v0
.line 652
:try_start_0
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->val$waiter:Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;
iget v1, v1, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;->mNonce:I
iget v2, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->val$nonce:I
if-ne v1, v2, :cond_0
.line 653
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->this$0:Lorg/sqlite/database/sqlite/SQLiteConnectionPool;
iget-object v2, p0, Lorg/sqlite/database/sqlite/SQLiteConnectionPool$1;->val$waiter:Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;
invoke-static {v1, v2}, Lorg/sqlite/database/sqlite/SQLiteConnectionPool;->access$100(Lorg/sqlite/database/sqlite/SQLiteConnectionPool;Lorg/sqlite/database/sqlite/SQLiteConnectionPool$ConnectionWaiter;)V
.line 655
:cond_0
monitor-exit v0
return-void
:catchall_0
move-exception v1
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v1
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,23 @@
.class public Lorg/sqlite/database/sqlite/SQLiteConstraintException;
.super Lorg/sqlite/database/sqlite/SQLiteException;
.source "SQLiteConstraintException.java"
# direct methods
.method public constructor <init>()V
.locals 0
.line 27
invoke-direct {p0}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>()V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 30
invoke-direct {p0, p1}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V
return-void
.end method
@@ -0,0 +1,65 @@
.class Lorg/sqlite/database/sqlite/SQLiteDatabase$1;
.super Ljava/lang/ThreadLocal;
.source "SQLiteDatabase.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lorg/sqlite/database/sqlite/SQLiteDatabase;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ThreadLocal<",
"Lorg/sqlite/database/sqlite/SQLiteSession;",
">;"
}
.end annotation
# instance fields
.field final synthetic this$0:Lorg/sqlite/database/sqlite/SQLiteDatabase;
# direct methods
.method constructor <init>(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.locals 0
.line 85
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteDatabase$1;->this$0:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-direct {p0}, Ljava/lang/ThreadLocal;-><init>()V
return-void
.end method
# virtual methods
.method protected bridge synthetic initialValue()Ljava/lang/Object;
.locals 1
.line 85
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteDatabase$1;->initialValue()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
return-object v0
.end method
.method protected initialValue()Lorg/sqlite/database/sqlite/SQLiteSession;
.locals 1
.line 88
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteDatabase$1;->this$0:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->createSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,53 @@
.class final Lorg/sqlite/database/sqlite/SQLiteDatabase$2;
.super Ljava/lang/Object;
.source "SQLiteDatabase.java"
# interfaces
.implements Ljava/io/FileFilter;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lorg/sqlite/database/sqlite/SQLiteDatabase;->deleteDatabase(Ljava/io/File;)Z
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# instance fields
.field final synthetic val$prefix:Ljava/lang/String;
# direct methods
.method constructor <init>(Ljava/lang/String;)V
.locals 0
.line 745
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteDatabase$2;->val$prefix:Ljava/lang/String;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public accept(Ljava/io/File;)Z
.locals 1
.line 748
invoke-virtual {p1}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object p1
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteDatabase$2;->val$prefix:Ljava/lang/String;
invoke-virtual {p1, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result p1
return p1
.end method
@@ -0,0 +1,19 @@
.class public interface abstract Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;
.super Ljava/lang/Object;
.source "SQLiteDatabase.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lorg/sqlite/database/sqlite/SQLiteDatabase;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "CursorFactory"
.end annotation
# virtual methods
.method public abstract newCursor(Lorg/sqlite/database/sqlite/SQLiteDatabase;Lorg/sqlite/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteQuery;)Landroid/database/Cursor;
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,152 @@
.class public final Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;
.super Ljava/lang/Object;
.source "SQLiteDirectCursorDriver.java"
# interfaces
.implements Lorg/sqlite/database/sqlite/SQLiteCursorDriver;
# instance fields
.field private final mCancellationSignal:Landroid/os/CancellationSignal;
.field private final mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
.field private final mEditTable:Ljava/lang/String;
.field private mQuery:Lorg/sqlite/database/sqlite/SQLiteQuery;
.field private final mSql:Ljava/lang/String;
# direct methods
.method public constructor <init>(Lorg/sqlite/database/sqlite/SQLiteDatabase;Ljava/lang/String;Ljava/lang/String;Landroid/os/CancellationSignal;)V
.locals 0
.line 40
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 41
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
.line 42
iput-object p3, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mEditTable:Ljava/lang/String;
.line 43
iput-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mSql:Ljava/lang/String;
.line 44
iput-object p4, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mCancellationSignal:Landroid/os/CancellationSignal;
return-void
.end method
# virtual methods
.method public cursorClosed()V
.locals 0
return-void
.end method
.method public cursorDeactivated()V
.locals 0
return-void
.end method
.method public cursorRequeried(Landroid/database/Cursor;)V
.locals 0
return-void
.end method
.method public query(Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;[Ljava/lang/String;)Landroid/database/Cursor;
.locals 4
.line 48
new-instance v0, Lorg/sqlite/database/sqlite/SQLiteQuery;
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
iget-object v2, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mSql:Ljava/lang/String;
iget-object v3, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mCancellationSignal:Landroid/os/CancellationSignal;
invoke-direct {v0, v1, v2, v3}, Lorg/sqlite/database/sqlite/SQLiteQuery;-><init>(Lorg/sqlite/database/sqlite/SQLiteDatabase;Ljava/lang/String;Landroid/os/CancellationSignal;)V
.line 51
:try_start_0
invoke-virtual {v0, p2}, Lorg/sqlite/database/sqlite/SQLiteQuery;->bindAllArgsAsStrings([Ljava/lang/String;)V
if-nez p1, :cond_0
.line 54
new-instance p1, Lorg/sqlite/database/sqlite/SQLiteCursor;
iget-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mEditTable:Ljava/lang/String;
invoke-direct {p1, p0, p2, v0}, Lorg/sqlite/database/sqlite/SQLiteCursor;-><init>(Lorg/sqlite/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteQuery;)V
goto :goto_0
.line 56
:cond_0
iget-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mEditTable:Ljava/lang/String;
invoke-interface {p1, p2, p0, v1, v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;->newCursor(Lorg/sqlite/database/sqlite/SQLiteDatabase;Lorg/sqlite/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteQuery;)Landroid/database/Cursor;
move-result-object p1
:try_end_0
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
.line 63
:goto_0
iput-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mQuery:Lorg/sqlite/database/sqlite/SQLiteQuery;
return-object p1
:catch_0
move-exception p1
.line 59
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteQuery;->close()V
.line 60
throw p1
.end method
.method public setBindArguments([Ljava/lang/String;)V
.locals 1
.line 72
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mQuery:Lorg/sqlite/database/sqlite/SQLiteQuery;
invoke-virtual {v0, p1}, Lorg/sqlite/database/sqlite/SQLiteQuery;->bindAllArgsAsStrings([Ljava/lang/String;)V
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 2
.line 85
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "SQLiteDirectCursorDriver: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteDirectCursorDriver;->mSql:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,23 @@
.class public Lorg/sqlite/database/sqlite/SQLiteDiskIOException;
.super Lorg/sqlite/database/sqlite/SQLiteException;
.source "SQLiteDiskIOException.java"
# direct methods
.method public constructor <init>()V
.locals 0
.line 28
invoke-direct {p0}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>()V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 31
invoke-direct {p0, p1}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V
return-void
.end method
@@ -0,0 +1,23 @@
.class public Lorg/sqlite/database/sqlite/SQLiteFullException;
.super Lorg/sqlite/database/sqlite/SQLiteException;
.source "SQLiteFullException.java"
# direct methods
.method public constructor <init>()V
.locals 0
.line 27
invoke-direct {p0}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>()V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 30
invoke-direct {p0, p1}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V
return-void
.end method
@@ -0,0 +1,866 @@
.class public abstract Lorg/sqlite/database/sqlite/SQLiteOpenHelper;
.super Ljava/lang/Object;
.source "SQLiteOpenHelper.java"
# static fields
.field private static final DEBUG_STRICT_READONLY:Z = false
.field private static final TAG:Ljava/lang/String; = "SQLiteOpenHelper"
# instance fields
.field private final mContext:Landroid/content/Context;
.field private mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
.field private mEnableWriteAheadLogging:Z
.field private final mErrorHandler:Lorg/sqlite/database/DatabaseErrorHandler;
.field private final mFactory:Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;
.field private mIsInitializing:Z
.field private final mMinimumSupportedVersion:I
.field private final mName:Ljava/lang/String;
.field private final mNewVersion:I
# direct methods
.method static constructor <clinit>()V
.locals 0
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;I)V
.locals 6
const/4 v5, 0x0
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move v4, p4
.line 84
invoke-direct/range {v0 .. v5}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;ILorg/sqlite/database/DatabaseErrorHandler;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;IILorg/sqlite/database/DatabaseErrorHandler;)V
.locals 1
.line 133
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x1
if-ge p4, v0, :cond_0
.line 134
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, "Version must be >= 1, was "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 136
:cond_0
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mContext:Landroid/content/Context;
.line 137
iput-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
.line 138
iput-object p3, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mFactory:Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;
.line 139
iput p4, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
.line 140
iput-object p6, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mErrorHandler:Lorg/sqlite/database/DatabaseErrorHandler;
const/4 p1, 0x0
.line 141
invoke-static {p1, p5}, Ljava/lang/Math;->max(II)I
move-result p1
iput p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mMinimumSupportedVersion:I
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;ILorg/sqlite/database/DatabaseErrorHandler;)V
.locals 7
const/4 v5, 0x0
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move v4, p4
move-object v6, p5
.line 106
invoke-direct/range {v0 .. v6}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;IILorg/sqlite/database/DatabaseErrorHandler;)V
return-void
.end method
.method private getDatabaseLocked(Z)Lorg/sqlite/database/sqlite/SQLiteDatabase;
.locals 7
.line 228
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
const/4 v1, 0x0
if-eqz v0, :cond_2
.line 229
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-nez v0, :cond_0
.line 231
iput-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
goto :goto_0
:cond_0
if-eqz p1, :cond_1
.line 232
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isReadOnly()Z
move-result v0
if-nez v0, :cond_2
.line 234
:cond_1
iget-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
return-object p1
.line 238
:cond_2
:goto_0
iget-boolean v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
if-eqz v0, :cond_3
.line 239
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "getDatabase called recursively"
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 242
:cond_3
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
const/4 v2, 0x1
const/4 v3, 0x0
.line 244
:try_start_0
iput-boolean v2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
if-eqz v0, :cond_4
if-eqz p1, :cond_7
.line 247
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isReadOnly()Z
move-result v1
if-eqz v1, :cond_7
.line 248
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->reopenReadWrite()V
goto :goto_2
.line 250
:cond_4
iget-object v4, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
if-nez v4, :cond_5
.line 251
invoke-static {v1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->create(Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;)Lorg/sqlite/database/sqlite/SQLiteDatabase;
move-result-object v1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
:goto_1
move-object v0, v1
goto :goto_2
.line 259
:cond_5
:try_start_1
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
iget-object v4, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mFactory:Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;
iget-object v5, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mErrorHandler:Lorg/sqlite/database/DatabaseErrorHandler;
invoke-static {v1, v4, v5}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->openOrCreateDatabase(Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;Lorg/sqlite/database/DatabaseErrorHandler;)Lorg/sqlite/database/sqlite/SQLiteDatabase;
move-result-object v1
:try_end_1
.catch Lorg/sqlite/database/sqlite/SQLiteException; {:try_start_1 .. :try_end_1} :catch_0
.catchall {:try_start_1 .. :try_end_1} :catchall_1
goto :goto_1
:catch_0
move-exception v1
if-eqz p1, :cond_6
.line 265
:try_start_2
throw v1
.line 267
:cond_6
sget-object v4, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->TAG:Ljava/lang/String;
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "Couldn\'t open "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v6, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v6, " for writing (will try read-only):"
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v4, v5, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 269
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mContext:Landroid/content/Context;
iget-object v4, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
invoke-virtual {v1, v4}, Landroid/content/Context;->getDatabasePath(Ljava/lang/String;)Ljava/io/File;
move-result-object v1
invoke-virtual {v1}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v1
.line 270
iget-object v4, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mFactory:Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;
iget-object v5, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mErrorHandler:Lorg/sqlite/database/DatabaseErrorHandler;
invoke-static {v1, v4, v2, v5}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Lorg/sqlite/database/sqlite/SQLiteDatabase$CursorFactory;ILorg/sqlite/database/DatabaseErrorHandler;)Lorg/sqlite/database/sqlite/SQLiteDatabase;
move-result-object v1
goto :goto_1
.line 275
:cond_7
:goto_2
invoke-virtual {p0, v0}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->onConfigure(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.line 277
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getVersion()I
move-result v1
.line 278
iget v2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
if-eq v1, v2, :cond_e
.line 279
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isReadOnly()Z
move-result v2
if-eqz v2, :cond_8
.line 280
new-instance p1, Lorg/sqlite/database/sqlite/SQLiteException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Can\'t upgrade read-only database from version "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 281
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getVersion()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v2, " to "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v2, ": "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {p1, v1}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V
throw p1
:cond_8
if-lez v1, :cond_b
.line 284
iget v2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mMinimumSupportedVersion:I
if-ge v1, v2, :cond_b
.line 285
new-instance v2, Ljava/io/File;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getPath()Ljava/lang/String;
move-result-object v4
invoke-direct {v2, v4}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 286
invoke-virtual {p0, v0}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->onBeforeDelete(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.line 287
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->close()V
.line 288
invoke-static {v2}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->deleteDatabase(Ljava/io/File;)Z
move-result v2
if-eqz v2, :cond_a
.line 289
iput-boolean v3, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
.line 290
invoke-direct {p0, p1}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->getDatabaseLocked(Z)Lorg/sqlite/database/sqlite/SQLiteDatabase;
move-result-object p1
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
.line 324
iput-boolean v3, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
if-eqz v0, :cond_9
.line 325
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
if-eq v0, v1, :cond_9
.line 326
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->close()V
:cond_9
return-object p1
.line 292
:cond_a
:try_start_3
new-instance p1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Unable to delete obsolete database "
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v4, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " with version "
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {p1, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 296
:cond_b
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->beginTransaction()V
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_1
if-nez v1, :cond_c
.line 299
:try_start_4
invoke-virtual {p0, v0}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->onCreate(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
goto :goto_3
:catchall_0
move-exception p1
goto :goto_4
.line 301
:cond_c
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
if-le v1, p1, :cond_d
.line 302
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
invoke-virtual {p0, v0, v1, p1}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->onDowngrade(Lorg/sqlite/database/sqlite/SQLiteDatabase;II)V
goto :goto_3
.line 304
:cond_d
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
invoke-virtual {p0, v0, v1, p1}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->onUpgrade(Lorg/sqlite/database/sqlite/SQLiteDatabase;II)V
.line 307
:goto_3
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mNewVersion:I
invoke-virtual {v0, p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->setVersion(I)V
.line 308
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
:try_end_4
.catchall {:try_start_4 .. :try_end_4} :catchall_0
.line 310
:try_start_5
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->endTransaction()V
goto :goto_5
:goto_4
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->endTransaction()V
.line 311
throw p1
.line 315
:cond_e
:goto_5
invoke-virtual {p0, v0}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->onOpen(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.line 317
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isReadOnly()Z
move-result p1
if-eqz p1, :cond_f
.line 318
sget-object p1, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->TAG:Ljava/lang/String;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Opened "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, " in read-only mode"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {p1, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 321
:cond_f
iput-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
:try_end_5
.catchall {:try_start_5 .. :try_end_5} :catchall_1
.line 324
iput-boolean v3, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
if-eqz v0, :cond_10
.line 325
iget-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
if-eq v0, p1, :cond_10
.line 326
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->close()V
:cond_10
return-object v0
:catchall_1
move-exception p1
.line 324
iput-boolean v3, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
if-eqz v0, :cond_11
.line 325
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
if-eq v0, v1, :cond_11
.line 326
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->close()V
.line 328
:cond_11
throw p1
.end method
# virtual methods
.method public declared-synchronized close()V
.locals 2
monitor-enter p0
.line 335
:try_start_0
iget-boolean v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mIsInitializing:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Closed during initialization"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 337
:cond_0
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
if-eqz v0, :cond_1
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-eqz v0, :cond_1
.line 338
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->close()V
const/4 v0, 0x0
.line 339
iput-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 341
:cond_1
monitor-exit p0
return-void
:catchall_0
move-exception v0
.line 334
monitor-exit p0
throw v0
.end method
.method public getDatabaseName()Ljava/lang/String;
.locals 1
.line 149
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mName:Ljava/lang/String;
return-object v0
.end method
.method public getReadableDatabase()Lorg/sqlite/database/sqlite/SQLiteDatabase;
.locals 1
.line 222
monitor-enter p0
const/4 v0, 0x0
.line 223
:try_start_0
invoke-direct {p0, v0}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->getDatabaseLocked(Z)Lorg/sqlite/database/sqlite/SQLiteDatabase;
move-result-object v0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
.line 224
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v0
.end method
.method public getWritableDatabase()Lorg/sqlite/database/sqlite/SQLiteDatabase;
.locals 1
.line 198
monitor-enter p0
const/4 v0, 0x1
.line 199
:try_start_0
invoke-direct {p0, v0}, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->getDatabaseLocked(Z)Lorg/sqlite/database/sqlite/SQLiteDatabase;
move-result-object v0
monitor-exit p0
return-object v0
:catchall_0
move-exception v0
.line 200
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v0
.end method
.method public onBeforeDelete(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.locals 0
return-void
.end method
.method public onConfigure(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.locals 0
return-void
.end method
.method public abstract onCreate(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.end method
.method public onDowngrade(Lorg/sqlite/database/sqlite/SQLiteDatabase;II)V
.locals 2
.line 423
new-instance p1, Lorg/sqlite/database/sqlite/SQLiteException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Can\'t downgrade database from version "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p2, " to "
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public onOpen(Lorg/sqlite/database/sqlite/SQLiteDatabase;)V
.locals 0
return-void
.end method
.method public abstract onUpgrade(Lorg/sqlite/database/sqlite/SQLiteDatabase;II)V
.end method
.method public setWriteAheadLoggingEnabled(Z)V
.locals 1
.line 164
monitor-enter p0
.line 165
:try_start_0
iget-boolean v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mEnableWriteAheadLogging:Z
if-eq v0, p1, :cond_2
.line 166
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
if-eqz v0, :cond_1
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-eqz v0, :cond_1
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->isReadOnly()Z
move-result v0
if-nez v0, :cond_1
if-eqz p1, :cond_0
.line 168
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->enableWriteAheadLogging()Z
goto :goto_0
.line 170
:cond_0
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->disableWriteAheadLogging()V
.line 173
:cond_1
:goto_0
iput-boolean p1, p0, Lorg/sqlite/database/sqlite/SQLiteOpenHelper;->mEnableWriteAheadLogging:Z
.line 175
:cond_2
monitor-exit p0
return-void
:catchall_0
move-exception p1
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p1
.end method
@@ -0,0 +1,521 @@
.class public abstract Lorg/sqlite/database/sqlite/SQLiteProgram;
.super Lorg/sqlite/database/sqlite/SQLiteClosable;
.source "SQLiteProgram.java"
# static fields
.field private static final EMPTY_STRING_ARRAY:[Ljava/lang/String;
# instance fields
.field private final mBindArgs:[Ljava/lang/Object;
.field private final mColumnNames:[Ljava/lang/String;
.field private final mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
.field private final mNumParameters:I
.field private final mReadOnly:Z
.field private final mSql:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 1
const/4 v0, 0x0
.line 35
new-array v0, v0, [Ljava/lang/String;
sput-object v0, Lorg/sqlite/database/sqlite/SQLiteProgram;->EMPTY_STRING_ARRAY:[Ljava/lang/String;
return-void
.end method
.method constructor <init>(Lorg/sqlite/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)V
.locals 4
.line 45
invoke-direct {p0}, Lorg/sqlite/database/sqlite/SQLiteClosable;-><init>()V
.line 46
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
.line 47
invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p2
iput-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mSql:Ljava/lang/String;
.line 49
iget-object p2, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mSql:Ljava/lang/String;
invoke-static {p2}, Landroid/database/DatabaseUtils;->getSqlStatementType(Ljava/lang/String;)I
move-result p2
const/4 v0, 0x0
packed-switch p2, :pswitch_data_0
const/4 v1, 0x1
if-ne p2, v1, :cond_0
goto :goto_0
.line 54
:pswitch_0
iput-boolean v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mReadOnly:Z
.line 55
sget-object p1, Lorg/sqlite/database/sqlite/SQLiteProgram;->EMPTY_STRING_ARRAY:[Ljava/lang/String;
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mColumnNames:[Ljava/lang/String;
.line 56
iput v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
goto :goto_1
:cond_0
const/4 v1, 0x0
.line 61
:goto_0
new-instance p2, Lorg/sqlite/database/sqlite/SQLiteStatementInfo;
invoke-direct {p2}, Lorg/sqlite/database/sqlite/SQLiteStatementInfo;-><init>()V
.line 62
invoke-virtual {p1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getThreadSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v2
iget-object v3, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mSql:Ljava/lang/String;
.line 63
invoke-virtual {p1, v1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getThreadDefaultConnectionFlags(Z)I
move-result p1
.line 62
invoke-virtual {v2, v3, p1, p4, p2}, Lorg/sqlite/database/sqlite/SQLiteSession;->prepare(Ljava/lang/String;ILandroid/os/CancellationSignal;Lorg/sqlite/database/sqlite/SQLiteStatementInfo;)V
.line 65
iget-boolean p1, p2, Lorg/sqlite/database/sqlite/SQLiteStatementInfo;->readOnly:Z
iput-boolean p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mReadOnly:Z
.line 66
iget-object p1, p2, Lorg/sqlite/database/sqlite/SQLiteStatementInfo;->columnNames:[Ljava/lang/String;
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mColumnNames:[Ljava/lang/String;
.line 67
iget p1, p2, Lorg/sqlite/database/sqlite/SQLiteStatementInfo;->numParameters:I
iput p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
:goto_1
if-eqz p3, :cond_1
.line 71
array-length p1, p3
iget p2, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
if-le p1, p2, :cond_1
.line 72
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p4, "Too many bind arguments. "
invoke-virtual {p2, p4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
array-length p3, p3
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p3, " arguments were provided but the statement needs "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget p3, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p3, " arguments."
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.line 77
:cond_1
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
if-eqz p1, :cond_2
.line 78
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
new-array p1, p1, [Ljava/lang/Object;
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
if-eqz p3, :cond_3
.line 80
iget-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
array-length p2, p3
invoke-static {p3, v0, p1, v0, p2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
goto :goto_2
:cond_2
const/4 p1, 0x0
.line 83
iput-object p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
:cond_3
:goto_2
return-void
:pswitch_data_0
.packed-switch 0x4
:pswitch_0
:pswitch_0
:pswitch_0
.end packed-switch
.end method
.method private bind(ILjava/lang/Object;)V
.locals 2
const/4 v0, 0x1
if-lt p1, v0, :cond_1
.line 215
iget v1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
if-le p1, v1, :cond_0
goto :goto_0
.line 220
:cond_0
iget-object v1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
sub-int/2addr p1, v0
aput-object p2, v1, p1
return-void
.line 216
:cond_1
:goto_0
new-instance p2, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Cannot bind argument at index "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, " because the index is out of range. The statement has "
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget p1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mNumParameters:I
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, " parameters."
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p2
.end method
# virtual methods
.method public bindAllArgsAsStrings([Ljava/lang/String;)V
.locals 2
if-eqz p1, :cond_0
.line 203
array-length v0, p1
:goto_0
if-eqz v0, :cond_0
add-int/lit8 v1, v0, -0x1
.line 204
aget-object v1, p1, v1
invoke-virtual {p0, v0, v1}, Lorg/sqlite/database/sqlite/SQLiteProgram;->bindString(ILjava/lang/String;)V
add-int/lit8 v0, v0, -0x1
goto :goto_0
:cond_0
return-void
.end method
.method public bindBlob(I[B)V
.locals 2
if-nez p2, :cond_0
.line 182
new-instance p2, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "the bind value at index "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, " is null"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p2
.line 184
:cond_0
invoke-direct {p0, p1, p2}, Lorg/sqlite/database/sqlite/SQLiteProgram;->bind(ILjava/lang/Object;)V
return-void
.end method
.method public bindDouble(ID)V
.locals 0
.line 156
invoke-static {p2, p3}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;
move-result-object p2
invoke-direct {p0, p1, p2}, Lorg/sqlite/database/sqlite/SQLiteProgram;->bind(ILjava/lang/Object;)V
return-void
.end method
.method public bindLong(IJ)V
.locals 0
.line 145
invoke-static {p2, p3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p2
invoke-direct {p0, p1, p2}, Lorg/sqlite/database/sqlite/SQLiteProgram;->bind(ILjava/lang/Object;)V
return-void
.end method
.method public bindNull(I)V
.locals 1
const/4 v0, 0x0
.line 134
invoke-direct {p0, p1, v0}, Lorg/sqlite/database/sqlite/SQLiteProgram;->bind(ILjava/lang/Object;)V
return-void
.end method
.method public bindString(ILjava/lang/String;)V
.locals 2
if-nez p2, :cond_0
.line 168
new-instance p2, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "the bind value at index "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string p1, " is null"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p2
.line 170
:cond_0
invoke-direct {p0, p1, p2}, Lorg/sqlite/database/sqlite/SQLiteProgram;->bind(ILjava/lang/Object;)V
return-void
.end method
.method public clearBindings()V
.locals 2
.line 191
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
if-eqz v0, :cond_0
.line 192
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
const/4 v1, 0x0
invoke-static {v0, v1}, Ljava/util/Arrays;->fill([Ljava/lang/Object;Ljava/lang/Object;)V
:cond_0
return-void
.end method
.method final getBindArgs()[Ljava/lang/Object;
.locals 1
.line 96
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mBindArgs:[Ljava/lang/Object;
return-object v0
.end method
.method final getColumnNames()[Ljava/lang/String;
.locals 1
.line 100
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mColumnNames:[Ljava/lang/String;
return-object v0
.end method
.method protected final getConnectionFlags()I
.locals 2
.line 110
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
iget-boolean v1, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mReadOnly:Z
invoke-virtual {v0, v1}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getThreadDefaultConnectionFlags(Z)I
move-result v0
return v0
.end method
.method final getDatabase()Lorg/sqlite/database/sqlite/SQLiteDatabase;
.locals 1
.line 88
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
return-object v0
.end method
.method protected final getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
.locals 1
.line 105
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->getThreadSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
return-object v0
.end method
.method final getSql()Ljava/lang/String;
.locals 1
.line 92
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mSql:Ljava/lang/String;
return-object v0
.end method
.method public final getUniqueId()I
.locals 1
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v0, -0x1
return v0
.end method
.method protected onAllReferencesReleased()V
.locals 0
.line 211
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteProgram;->clearBindings()V
return-void
.end method
.method protected final onCorruption()V
.locals 1
.line 115
iget-object v0, p0, Lorg/sqlite/database/sqlite/SQLiteProgram;->mDatabase:Lorg/sqlite/database/sqlite/SQLiteDatabase;
invoke-virtual {v0}, Lorg/sqlite/database/sqlite/SQLiteDatabase;->onCorruption()V
return-void
.end method
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,429 @@
.class public final Lorg/sqlite/database/sqlite/SQLiteStatement;
.super Lorg/sqlite/database/sqlite/SQLiteProgram;
.source "SQLiteStatement.java"
# direct methods
.method constructor <init>(Lorg/sqlite/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/Object;)V
.locals 1
const/4 v0, 0x0
.line 35
invoke-direct {p0, p1, p2, p3, v0}, Lorg/sqlite/database/sqlite/SQLiteProgram;-><init>(Lorg/sqlite/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/Object;Landroid/os/CancellationSignal;)V
return-void
.end method
# virtual methods
.method public execute()V
.locals 5
.line 46
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->acquireReference()V
.line 48
:try_start_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getBindArgs()[Ljava/lang/Object;
move-result-object v2
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getConnectionFlags()I
move-result v3
const/4 v4, 0x0
invoke-virtual {v0, v1, v2, v3, v4}, Lorg/sqlite/database/sqlite/SQLiteSession;->execute(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)V
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteDatabaseCorruptException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 53
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
return-void
:catchall_0
move-exception v0
goto :goto_0
:catch_0
move-exception v0
.line 50
:try_start_1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->onCorruption()V
.line 51
throw v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 53
:goto_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
.line 54
throw v0
.end method
.method public executeInsert()J
.locals 5
.line 88
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->acquireReference()V
.line 90
:try_start_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
.line 91
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getBindArgs()[Ljava/lang/Object;
move-result-object v2
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getConnectionFlags()I
move-result v3
const/4 v4, 0x0
.line 90
invoke-virtual {v0, v1, v2, v3, v4}, Lorg/sqlite/database/sqlite/SQLiteSession;->executeForLastInsertedRowId(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)J
move-result-wide v0
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteDatabaseCorruptException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 96
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
return-wide v0
:catchall_0
move-exception v0
goto :goto_0
:catch_0
move-exception v0
.line 93
:try_start_1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->onCorruption()V
.line 94
throw v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 96
:goto_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
.line 97
throw v0
.end method
.method public executeUpdateDelete()I
.locals 5
.line 66
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->acquireReference()V
.line 68
:try_start_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
.line 69
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getBindArgs()[Ljava/lang/Object;
move-result-object v2
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getConnectionFlags()I
move-result v3
const/4 v4, 0x0
.line 68
invoke-virtual {v0, v1, v2, v3, v4}, Lorg/sqlite/database/sqlite/SQLiteSession;->executeForChangedRowCount(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)I
move-result v0
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteDatabaseCorruptException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 74
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
return v0
:catchall_0
move-exception v0
goto :goto_0
:catch_0
move-exception v0
.line 71
:try_start_1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->onCorruption()V
.line 72
throw v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 74
:goto_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
.line 75
throw v0
.end method
.method public simpleQueryForBlobFileDescriptor()Landroid/os/ParcelFileDescriptor;
.locals 5
.line 151
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->acquireReference()V
.line 153
:try_start_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
.line 154
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getBindArgs()[Ljava/lang/Object;
move-result-object v2
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getConnectionFlags()I
move-result v3
const/4 v4, 0x0
.line 153
invoke-virtual {v0, v1, v2, v3, v4}, Lorg/sqlite/database/sqlite/SQLiteSession;->executeForBlobFileDescriptor(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)Landroid/os/ParcelFileDescriptor;
move-result-object v0
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteDatabaseCorruptException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 159
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
return-object v0
:catchall_0
move-exception v0
goto :goto_0
:catch_0
move-exception v0
.line 156
:try_start_1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->onCorruption()V
.line 157
throw v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 159
:goto_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
.line 160
throw v0
.end method
.method public simpleQueryForLong()J
.locals 5
.line 109
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->acquireReference()V
.line 111
:try_start_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
.line 112
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getBindArgs()[Ljava/lang/Object;
move-result-object v2
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getConnectionFlags()I
move-result v3
const/4 v4, 0x0
.line 111
invoke-virtual {v0, v1, v2, v3, v4}, Lorg/sqlite/database/sqlite/SQLiteSession;->executeForLong(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)J
move-result-wide v0
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteDatabaseCorruptException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 117
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
return-wide v0
:catchall_0
move-exception v0
goto :goto_0
:catch_0
move-exception v0
.line 114
:try_start_1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->onCorruption()V
.line 115
throw v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 117
:goto_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
.line 118
throw v0
.end method
.method public simpleQueryForString()Ljava/lang/String;
.locals 5
.line 130
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->acquireReference()V
.line 132
:try_start_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSession()Lorg/sqlite/database/sqlite/SQLiteSession;
move-result-object v0
.line 133
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getBindArgs()[Ljava/lang/Object;
move-result-object v2
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getConnectionFlags()I
move-result v3
const/4 v4, 0x0
.line 132
invoke-virtual {v0, v1, v2, v3, v4}, Lorg/sqlite/database/sqlite/SQLiteSession;->executeForString(Ljava/lang/String;[Ljava/lang/Object;ILandroid/os/CancellationSignal;)Ljava/lang/String;
move-result-object v0
:try_end_0
.catch Lorg/sqlite/database/sqlite/SQLiteDatabaseCorruptException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 138
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
return-object v0
:catchall_0
move-exception v0
goto :goto_0
:catch_0
move-exception v0
.line 135
:try_start_1
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->onCorruption()V
.line 136
throw v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 138
:goto_0
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->releaseReference()V
.line 139
throw v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
.line 165
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "SQLiteProgram: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Lorg/sqlite/database/sqlite/SQLiteStatement;->getSql()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
@@ -0,0 +1,22 @@
.class public final Lorg/sqlite/database/sqlite/SQLiteStatementInfo;
.super Ljava/lang/Object;
.source "SQLiteStatementInfo.java"
# instance fields
.field public columnNames:[Ljava/lang/String;
.field public numParameters:I
.field public readOnly:Z
# direct methods
.method public constructor <init>()V
.locals 0
.line 28
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
@@ -0,0 +1,23 @@
.class public Lorg/sqlite/database/sqlite/SQLiteTableLockedException;
.super Lorg/sqlite/database/sqlite/SQLiteException;
.source "SQLiteTableLockedException.java"
# direct methods
.method public constructor <init>()V
.locals 0
.line 24
invoke-direct {p0}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>()V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.locals 0
.line 27
invoke-direct {p0, p1}, Lorg/sqlite/database/sqlite/SQLiteException;-><init>(Ljava/lang/String;)V
return-void
.end method
@@ -0,0 +1,14 @@
.class public interface abstract Lorg/sqlite/database/sqlite/SQLiteTransactionListener;
.super Ljava/lang/Object;
.source "SQLiteTransactionListener.java"
# virtual methods
.method public abstract onBegin()V
.end method
.method public abstract onCommit()V
.end method
.method public abstract onRollback()V
.end method