-
Notifications
You must be signed in to change notification settings - Fork 533
/
Copy pathTaskDbHelper.java
68 lines (54 loc) · 2.6 KB
/
TaskDbHelper.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package vn.hunghd.flutterdownloader;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import vn.hunghd.flutterdownloader.TaskContract.TaskEntry;
public class TaskDbHelper extends SQLiteOpenHelper {
public static final int DATABASE_VERSION = 3;
public static final String DATABASE_NAME = "download_tasks.db";
private static TaskDbHelper instance = null;
private static final String SQL_CREATE_ENTRIES =
"CREATE TABLE " + TaskEntry.TABLE_NAME + " (" +
TaskEntry._ID + " INTEGER PRIMARY KEY," +
TaskEntry.COLUMN_NAME_TASK_ID + " VARCHAR(256), " +
TaskEntry.COLUMN_NAME_URL + " TEXT, " +
TaskEntry.COLUMN_NAME_TITLE + " TEXT, " +
TaskEntry.COLUMN_NAME_STATUS + " INTEGER DEFAULT 0, " +
TaskEntry.COLUMN_NAME_PROGRESS + " INTEGER DEFAULT 0, " +
TaskEntry.COLUMN_NAME_FILE_NAME + " TEXT, " +
TaskEntry.COLUMN_NAME_SAVED_DIR + " TEXT, " +
TaskEntry.COLUMN_NAME_HEADERS + " TEXT, " +
TaskEntry.COLUMN_NAME_MIME_TYPE + " VARCHAR(128), " +
TaskEntry.COLUMN_NAME_RESUMABLE + " TINYINT DEFAULT 0, " +
TaskEntry.COLUMN_NAME_SHOW_NOTIFICATION + " TINYINT DEFAULT 0, " +
TaskEntry.COLUMN_NAME_OPEN_FILE_FROM_NOTIFICATION + " TINYINT DEFAULT 0, " +
TaskEntry.COLUMN_NAME_TIME_CREATED + " INTEGER DEFAULT 0"
+ ")";
private static final String SQL_DELETE_ENTRIES =
"DROP TABLE IF EXISTS " + TaskEntry.TABLE_NAME;
public static TaskDbHelper getInstance(Context ctx) {
// Use the application context, which will ensure that you
// don't accidentally leak an Activity's context.
// See this article for more information: http://bit.ly/6LRzfx
if (instance == null) {
instance = new TaskDbHelper(ctx.getApplicationContext());
}
return instance;
}
private TaskDbHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(SQL_CREATE_ENTRIES);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL(SQL_DELETE_ENTRIES);
onCreate(db);
}
@Override
public void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion) {
onUpgrade(db, oldVersion, newVersion);
}
}