Transaction.smali
.class public Lcom/litesuits/orm/db/assit/Transaction;
.super Ljava/lang/Object;
.source "Transaction.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/litesuits/orm/db/assit/Transaction$Worker;
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 13
const-class v0, Lcom/litesuits/orm/db/assit/Transaction;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/litesuits/orm/db/assit/Transaction;->TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 12
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 35
return-void
.end method
.method public static execute(Landroid/database/sqlite/SQLiteDatabase;Lcom/litesuits/orm/db/assit/Transaction$Worker;)Ljava/lang/Object;
.registers 5
.param p0, "db" # Landroid/database/sqlite/SQLiteDatabase;
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Landroid/database/sqlite/SQLiteDatabase;",
"Lcom/litesuits/orm/db/assit/Transaction$Worker<",
"TT;>;)TT;"
}
.end annotation
.line 19
.local p1, "worker":Lcom/litesuits/orm/db/assit/Transaction$Worker;, "Lcom/litesuits/orm/db/assit/Transaction$Worker<TT;>;"
invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
.line 20
sget-object v0, Lcom/litesuits/orm/db/assit/Transaction;->TAG:Ljava/lang/String;
const-string v1, "----> BeginTransaction"
invoke-static {v0, v1}, Lcom/litesuits/orm/log/OrmLog;->i(Ljava/lang/String;Ljava/lang/String;)I
.line 21
const/4 v0, 0x0
.line 23
.local v0, "data":Ljava/lang/Object;, "TT;"
:try_start_b
invoke-interface {p1, p0}, Lcom/litesuits/orm/db/assit/Transaction$Worker;->doTransaction(Landroid/database/sqlite/SQLiteDatabase;)Ljava/lang/Object;
move-result-object v1
move-object v0, v1
.line 24
invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
.line 25
sget-boolean v1, Lcom/litesuits/orm/log/OrmLog;->isPrint:Z
if-eqz v1, :cond_25
.line 26
sget-object v1, Lcom/litesuits/orm/db/assit/Transaction;->TAG:Ljava/lang/String;
const-string v2, "----> Transaction Successful"
invoke-static {v1, v2}, Lcom/litesuits/orm/log/OrmLog;->i(Ljava/lang/String;Ljava/lang/String;)I
:try_end_1e
.catch Ljava/lang/Exception; {:try_start_b .. :try_end_1e} :catch_21
.catchall {:try_start_b .. :try_end_1e} :catchall_1f
goto :goto_25
.line 30
:catchall_1f
move-exception v1
goto :goto_2a
.line 27
:catch_21
move-exception v1
.line 28
.local v1, "e":Ljava/lang/Exception;
:try_start_22
invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
:try_end_25
.catchall {:try_start_22 .. :try_end_25} :catchall_1f
.line 30
.end local v1 # "e":Ljava/lang/Exception;
:cond_25
:goto_25
invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
.line 31
nop
.line 32
return-object v0
.line 30
:goto_2a
invoke-virtual {p0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
throw v1
.end method