summaryrefslogtreecommitdiffstats
path: root/src/com/android/photos
diff options
context:
space:
mode:
authorGeorge Mount <mount@google.com>2013-03-15 11:16:08 -0700
committerGeorge Mount <mount@google.com>2013-03-15 11:16:50 -0700
commitb5ab491c5461df7fedb9c83f42e80acef4fd8a8e (patch)
tree1593ab2f785ff8fec82e557e127607e0f0fb5014 /src/com/android/photos
parent091314b7ea73e774ce96c981bd7007c94ad80e30 (diff)
downloadandroid_packages_apps_Gallery2-b5ab491c5461df7fedb9c83f42e80acef4fd8a8e.tar.gz
android_packages_apps_Gallery2-b5ab491c5461df7fedb9c83f42e80acef4fd8a8e.tar.bz2
android_packages_apps_Gallery2-b5ab491c5461df7fedb9c83f42e80acef4fd8a8e.zip
Delete and recreate database on upgrade.
Change-Id: I0125697dd673568ddfee7be8d7d0d693018b61d5
Diffstat (limited to 'src/com/android/photos')
-rw-r--r--src/com/android/photos/data/PhotoDatabase.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/com/android/photos/data/PhotoDatabase.java b/src/com/android/photos/data/PhotoDatabase.java
index a87f00bfa..3a9ad3cb1 100644
--- a/src/com/android/photos/data/PhotoDatabase.java
+++ b/src/com/android/photos/data/PhotoDatabase.java
@@ -90,12 +90,21 @@ public class PhotoDatabase extends SQLiteOpenHelper {
createTable(db, Metadata.TABLE, getMetadataTableDefinition());
}
+ public PhotoDatabase(Context context, String dbName, int dbVersion) {
+ super(context, dbName, null, dbVersion);
+ }
+
public PhotoDatabase(Context context, String dbName) {
super(context, dbName, null, DB_VERSION);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
+ dropTable(db, Metadata.TABLE);
+ dropTable(db, Photos.TABLE);
+ dropTable(db, Albums.TABLE);
+ dropTable(db, Accounts.TABLE);
+ onCreate(db);
}
protected List<String[]> getAlbumTableDefinition() {
@@ -163,4 +172,14 @@ public class PhotoDatabase extends SQLiteOpenHelper {
}
}
}
+
+ protected static void dropTable(SQLiteDatabase db, String table) {
+ db.beginTransaction();
+ try {
+ db.execSQL("drop table " + table);
+ db.setTransactionSuccessful();
+ } finally {
+ db.endTransaction();
+ }
+ }
}