diff options
author | George Mount <mount@google.com> | 2013-03-15 11:16:08 -0700 |
---|---|---|
committer | George Mount <mount@google.com> | 2013-03-15 11:16:50 -0700 |
commit | b5ab491c5461df7fedb9c83f42e80acef4fd8a8e (patch) | |
tree | 1593ab2f785ff8fec82e557e127607e0f0fb5014 /src/com/android/photos | |
parent | 091314b7ea73e774ce96c981bd7007c94ad80e30 (diff) | |
download | android_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.java | 19 |
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(); + } + } } |