Fixed bug where the very first time the app is run, it would crash, by adding "IF NOT EXISTS" to the sql queries for creating tables. Also synchronizing these operations for good measure.

pull/14/head
Tim Su 17 years ago
parent b3661a872d
commit 7d4ad4d9c9

@ -70,9 +70,9 @@ public class Alert extends AbstractModel {
}
@Override
public void onCreate(SQLiteDatabase db) {
public synchronized void onCreate(SQLiteDatabase db) {
String sql = new StringBuilder().
append("CREATE TABLE ").append(tableName).append(" (").
append("CREATE TABLE IF NOT EXISTS ").append(tableName).append(" (").
append(AbstractController.KEY_ROWID).append(" integer primary key autoincrement, ").
append(TASK).append(" integer not null,").
append(DATE).append(" integer not null,").
@ -82,7 +82,7 @@ public class Alert extends AbstractModel {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
public synchronized void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(getClass().getSimpleName(), "Upgrading database from version " +
oldVersion + " to " + newVersion + ".");

@ -77,9 +77,9 @@ public class SyncMapping extends AbstractModel {
}
@Override
public void onCreate(SQLiteDatabase db) {
public synchronized void onCreate(SQLiteDatabase db) {
String sql = new StringBuilder().
append("CREATE TABLE ").append(tableName).append(" (").
append("CREATE TABLE IF NOT EXISTS ").append(tableName).append(" (").
append(AbstractController.KEY_ROWID).append(" integer primary key autoincrement, ").
append(TASK).append(" integer not null,").
append(SYNC_SERVICE).append(" integer not null,").
@ -91,7 +91,7 @@ public class SyncMapping extends AbstractModel {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
public synchronized void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(getClass().getSimpleName(), "Upgrading database from version " +
oldVersion + " to " + newVersion + ".");

@ -88,9 +88,9 @@ public abstract class AbstractTagModel extends AbstractModel {
}
@Override
public void onCreate(SQLiteDatabase db) {
public synchronized void onCreate(SQLiteDatabase db) {
String sql = new StringBuilder().
append("CREATE TABLE ").append(tableName).append(" (").
append("CREATE TABLE IF NOT EXISTS ").append(tableName).append(" (").
append(AbstractController.KEY_ROWID).append(" integer primary key autoincrement, ").
append(NAME).append(" text unique,").
append(NOTES).append(" text,").
@ -106,7 +106,7 @@ public abstract class AbstractTagModel extends AbstractModel {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
public synchronized void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(getClass().getSimpleName(), "Upgrading database from version " +
oldVersion + " to " + newVersion + ".");

@ -68,9 +68,9 @@ public class TagToTaskMapping extends AbstractModel {
}
@Override
public void onCreate(SQLiteDatabase db) {
public synchronized void onCreate(SQLiteDatabase db) {
String sql = new StringBuilder().
append("CREATE TABLE ").append(tableName).append(" (").
append("CREATE TABLE IF NOT EXISTS ").append(tableName).append(" (").
append(AbstractController.KEY_ROWID).append(" integer primary key autoincrement, ").
append(TASK).append(" integer not null,").
append(TAG).append(" integer not null,").
@ -80,7 +80,7 @@ public class TagToTaskMapping extends AbstractModel {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
public synchronized void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(getClass().getSimpleName(), "Upgrading database from version " +
oldVersion + " to " + newVersion + ".");

@ -117,9 +117,9 @@ public abstract class AbstractTaskModel extends AbstractModel {
}
@Override
public void onCreate(SQLiteDatabase db) {
public synchronized void onCreate(SQLiteDatabase db) {
String sql = new StringBuilder().
append("CREATE TABLE ").append(tableName).append(" (").
append("CREATE TABLE IF NOT EXISTS ").append(tableName).append(" (").
append(AbstractController.KEY_ROWID).append(" integer primary key autoincrement, ").
append(NAME).append(" text not null,").
append(NOTES).append(" text not null,").
@ -146,7 +146,7 @@ public abstract class AbstractTaskModel extends AbstractModel {
@Override
@SuppressWarnings("fallthrough")
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
public synchronized void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(getClass().getSimpleName(), "Upgrading database from version " +
oldVersion + " to " + newVersion + ".");
String sql;

Loading…
Cancel
Save