DatabaseOfflineBookHandler.smali

.class public Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;
.super Landroid/database/sqlite/SQLiteOpenHelper;
.source "DatabaseOfflineBookHandler.java"


# static fields
.field private static final DATABASE_NAME:Ljava/lang/String; = "bookList"

.field private static final DATABASE_VERSION:I = 0x1

.field public static final IMAGE:Ljava/lang/String; = "image"

.field public static final IMAGE_URL:Ljava/lang/String; = "imageurl"

.field private static final KEY_BOOK_Title:Ljava/lang/String; = "bookTitle"

.field private static final KEY_ID:Ljava/lang/String; = "id"

.field private static final KEY_NAME_BOOK_ID:Ljava/lang/String; = "bookId"

.field private static final KEY_TOTAL_PAGE_NO:Ljava/lang/String; = "totalPageNo"

.field private static final TABLE_CONTACTS:Ljava/lang/String; = "bookListDetails"


# instance fields
.field contact:Lcom/yctpublication/mastes/userlibrary/model/BookListModel;


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 5
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "context"
        }
    .end annotation

    const-string v0, "bookList"

    const/4 v1, 0x0

    const/4 v2, 0x1

    .line 31
    invoke-direct {p0, p1, v0, v1, v2}, Landroid/database/sqlite/SQLiteOpenHelper;-><init>(Landroid/content/Context;Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)V

    return-void
.end method


# virtual methods
.method public addBook(Lcom/yctpublication/mastes/userlibrary/model/BookListModel;)V
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "bookIdModel"
        }
    .end annotation

    .line 58
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    .line 60
    new-instance v1, Landroid/content/ContentValues;

    invoke-direct {v1}, Landroid/content/ContentValues;-><init>()V

    .line 61
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getBookId()Ljava/lang/String;

    move-result-object v2

    const-string v3, "bookId"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 62
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getBookTitle()Ljava/lang/String;

    move-result-object v2

    const-string v3, "bookTitle"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 64
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getByteArray()[B

    move-result-object v2

    const-string v3, "image"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;[B)V

    .line 65
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getUrlImage()Ljava/lang/String;

    move-result-object v2

    const-string v3, "imageurl"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 66
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getTotalPages()Ljava/lang/String;

    move-result-object p1

    const-string v2, "totalPageNo"

    invoke-virtual {v1, v2, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    const-string p1, "bookListDetails"

    const/4 v2, 0x0

    .line 69
    invoke-virtual {v0, p1, v2, v1}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J

    .line 71
    invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V

    return-void
.end method

.method public deleteContact(Lcom/yctpublication/mastes/userlibrary/model/BookListModel;)V
    .registers 5
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "contact"
        }
    .end annotation

    .line 155
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    const/4 v1, 0x1

    new-array v1, v1, [Ljava/lang/String;

    .line 157
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getId()I

    move-result p1

    invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object p1

    const/4 v2, 0x0

    aput-object p1, v1, v2

    const-string p1, "bookListDetails"

    const-string v2, "id = ?"

    .line 156
    invoke-virtual {v0, p1, v2, v1}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I

    .line 158
    invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V

    return-void
.end method

.method public deleteCourse(Ljava/lang/String;)Z
    .registers 10
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "courseName"
        }
    .end annotation

    .line 186
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    const/4 v1, 0x1

    new-array v2, v1, [Ljava/lang/String;

    const/4 v3, 0x0

    aput-object p1, v2, v3

    const-string v4, "Select * FROM bookListDetails WHERE bookId = ?"

    .line 187
    invoke-virtual {v0, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object v2

    .line 189
    invoke-interface {v2}, Landroid/database/Cursor;->getCount()I

    move-result v2

    if-lez v2, :cond_2b

    new-array v2, v1, [Ljava/lang/String;

    aput-object p1, v2, v3

    const-string p1, "bookListDetails"

    const-string v4, "bookId=?"

    .line 190
    invoke-virtual {v0, p1, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I

    move-result p1

    int-to-long v4, p1

    const-wide/16 v6, -0x1

    cmp-long p1, v4, v6

    if-nez p1, :cond_2a

    return v3

    :cond_2a
    return v1

    :cond_2b
    return v3
.end method

.method public findTask(Ljava/lang/String;)Landroid/database/Cursor;
    .registers 5
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "taskName"
        }
    .end annotation

    .line 174
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    .line 175
    new-instance v1, Ljava/lang/StringBuilder;

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

    const-string v2, "SELECT id FROM bookListDetails WHERE bookId = \'"

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

    move-result-object v1

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

    move-result-object p1

    const-string v1, "\'"

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

    move-result-object p1

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

    move-result-object p1

    const/4 v1, 0x0

    .line 177
    invoke-virtual {v0, p1, v1}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object p1

    return-object p1
.end method

.method public getAllBooks()Ljava/util/ArrayList;
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/ArrayList<",
            "Lcom/yctpublication/mastes/userlibrary/model/BookListModel;",
            ">;"
        }
    .end annotation

    .line 113
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    .line 117
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v1

    const-string v2, "SELECT  * FROM bookListDetails"

    const/4 v3, 0x0

    .line 118
    invoke-virtual {v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object v1

    .line 121
    invoke-interface {v1}, Landroid/database/Cursor;->moveToFirst()Z

    move-result v2

    if-eqz v2, :cond_58

    .line 123
    :cond_16
    new-instance v2, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;

    invoke-direct {v2}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;-><init>()V

    const/4 v3, 0x0

    .line 124
    invoke-interface {v1, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    invoke-virtual {v2, v3}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->setId(I)V

    const/4 v3, 0x1

    .line 125
    invoke-interface {v1, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->setBookId(Ljava/lang/String;)V

    const/4 v3, 0x2

    .line 126
    invoke-interface {v1, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->setBookTitle(Ljava/lang/String;)V

    const/4 v3, 0x3

    .line 127
    invoke-interface {v1, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->setUrlImage(Ljava/lang/String;)V

    const/4 v3, 0x4

    .line 128
    invoke-interface {v1, v3}, Landroid/database/Cursor;->getBlob(I)[B

    move-result-object v3

    invoke-virtual {v2, v3}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->setByteArray([B)V

    const/4 v3, 0x5

    .line 129
    invoke-interface {v1, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->setTotalPages(Ljava/lang/String;)V

    .line 131
    invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 132
    invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z

    move-result v2

    if-nez v2, :cond_16

    :cond_58
    return-object v0
.end method

.method public getBook(Ljava/lang/String;)Lcom/yctpublication/mastes/userlibrary/model/BookListModel;
    .registers 13
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "id"
        }
    .end annotation

    .line 80
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    const-string v1, "id"

    const-string v2, "bookId"

    const-string v3, "bookTitle"

    const-string v4, "imageurl"

    const-string v5, "image"

    const-string v6, "totalPageNo"

    .line 82
    filled-new-array/range {v1 .. v6}, [Ljava/lang/String;

    move-result-object v2

    const/4 v9, 0x1

    new-array v4, v9, [Ljava/lang/String;

    const/4 v10, 0x0

    aput-object p1, v4, v10

    const-string v1, "bookListDetails"

    const-string v3, "bookId=?"

    const/4 v5, 0x0

    const/4 v6, 0x0

    const-string v7, "bookId"

    const/4 v8, 0x0

    invoke-virtual/range {v0 .. v8}, 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;Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object p1

    .line 89
    invoke-interface {p1}, Landroid/database/Cursor;->getCount()I

    move-result v0

    const-string v1, ""

    if-lez v0, :cond_75

    .line 90
    invoke-interface {p1}, Landroid/database/Cursor;->moveToFirst()Z

    .line 93
    new-instance v0, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;

    invoke-interface {p1, v10}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    .line 94
    invoke-interface {p1, v9}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v4

    const/4 v2, 0x2

    .line 95
    invoke-interface {p1, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v5

    const/4 v2, 0x3

    .line 96
    invoke-interface {p1, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v6

    const/4 v2, 0x4

    .line 97
    invoke-interface {p1, v2}, Landroid/database/Cursor;->getBlob(I)[B

    move-result-object v7

    const/4 v2, 0x5

    .line 98
    invoke-interface {p1, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;

    move-result-object v8

    move-object v2, v0

    invoke-direct/range {v2 .. v8}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[BLjava/lang/String;)V

    iput-object v0, p0, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->contact:Lcom/yctpublication/mastes/userlibrary/model/BookListModel;

    .line 100
    new-instance v0, Ljava/lang/StringBuilder;

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

    invoke-interface {p1}, Landroid/database/Cursor;->getCount()I

    move-result p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object p1

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

    move-result-object p1

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

    move-result-object p1

    const-string v0, "cursor"

    invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_92

    .line 102
    :cond_75
    invoke-interface {p1}, Landroid/database/Cursor;->close()V

    .line 103
    new-instance v0, Ljava/lang/StringBuilder;

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

    invoke-interface {p1}, Landroid/database/Cursor;->getCount()I

    move-result p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object p1

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

    move-result-object p1

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

    move-result-object p1

    const-string v0, "cursor_null"

    invoke-static {v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 108
    :goto_92
    iget-object p1, p0, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->contact:Lcom/yctpublication/mastes/userlibrary/model/BookListModel;

    return-object p1
.end method

.method public getContactsCount()I
    .registers 4

    .line 164
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    const-string v1, "SELECT  * FROM bookListDetails"

    const/4 v2, 0x0

    .line 165
    invoke-virtual {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;

    move-result-object v0

    .line 166
    invoke-interface {v0}, Landroid/database/Cursor;->close()V

    .line 169
    invoke-interface {v0}, Landroid/database/Cursor;->getCount()I

    move-result v0

    return v0
.end method

.method public onCreate(Landroid/database/sqlite/SQLiteDatabase;)V
    .registers 3
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "db"
        }
    .end annotation

    const-string v0, "CREATE TABLE bookListDetails(id INTEGER PRIMARY KEY,bookId TEXT,bookTitle TEXT,imageurl VARCHAR,image BLOB NOT NULL,totalPageNo TEXT)"

    .line 43
    invoke-virtual {p1, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    return-void
.end method

.method public onUpgrade(Landroid/database/sqlite/SQLiteDatabase;II)V
    .registers 4
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0
        }
        names = {
            "db",
            "oldVersion",
            "newVersion"
        }
    .end annotation

    const-string p2, "DROP TABLE IF EXISTS bookListDetails"

    .line 50
    invoke-virtual {p1, p2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V

    .line 53
    invoke-virtual {p0, p1}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->onCreate(Landroid/database/sqlite/SQLiteDatabase;)V

    return-void
.end method

.method public updateContact(Lcom/yctpublication/mastes/userlibrary/model/BookListModel;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "contact"
        }
    .end annotation

    .line 141
    invoke-virtual {p0}, Lcom/yctpublication/mastes/common/storevalue/databasebook/DatabaseOfflineBookHandler;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;

    move-result-object v0

    .line 143
    new-instance v1, Landroid/content/ContentValues;

    invoke-direct {v1}, Landroid/content/ContentValues;-><init>()V

    .line 144
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getBookId()Ljava/lang/String;

    move-result-object v2

    const-string v3, "bookId"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 145
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getBookTitle()Ljava/lang/String;

    move-result-object v2

    const-string v3, "bookTitle"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V

    .line 146
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getByteArray()[B

    move-result-object v2

    const-string v3, "image"

    invoke-virtual {v1, v3, v2}, Landroid/content/ContentValues;->put(Ljava/lang/String;[B)V

    const/4 v2, 0x1

    new-array v2, v2, [Ljava/lang/String;

    .line 150
    invoke-virtual {p1}, Lcom/yctpublication/mastes/userlibrary/model/BookListModel;->getId()I

    move-result p1

    invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object p1

    const/4 v3, 0x0

    aput-object p1, v2, v3

    const-string p1, "bookListDetails"

    const-string v3, "id = ?"

    .line 149
    invoke-virtual {v0, p1, v1, v3, v2}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I

    move-result p1

    return p1
.end method