From 51692e27c1008021371c85bf622717a77c9f7530 Mon Sep 17 00:00:00 2001 From: Kenny Root Date: Wed, 8 Jul 2009 03:25:38 +0000 Subject: Add indices and color tables to robust upgrade git-svn-id: https://connectbot.googlecode.com/svn/trunk/connectbot@358 df292f66-193f-0410-a5fc-6d59da041ff2 --- src/org/connectbot/util/HostDatabase.java | 5 +++++ src/org/connectbot/util/RobustSQLiteOpenHelper.java | 7 +++++++ 2 files changed, 12 insertions(+) (limited to 'src/org') diff --git a/src/org/connectbot/util/HostDatabase.java b/src/org/connectbot/util/HostDatabase.java index 89d5455..1f13617 100644 --- a/src/org/connectbot/util/HostDatabase.java +++ b/src/org/connectbot/util/HostDatabase.java @@ -115,6 +115,11 @@ public class HostDatabase extends RobustSQLiteOpenHelper { static { addTableName(TABLE_HOSTS); addTableName(TABLE_PORTFORWARDS); + addIndexName(TABLE_PORTFORWARDS + FIELD_PORTFORWARD_HOSTID + "index"); + addTableName(TABLE_COLORS); + addIndexName(TABLE_COLORS + FIELD_COLOR_SCHEME + "index"); + addTableName(TABLE_COLOR_DEFAULTS); + addIndexName(TABLE_COLOR_DEFAULTS + FIELD_COLOR_SCHEME + "index"); } public HostDatabase(Context context) { diff --git a/src/org/connectbot/util/RobustSQLiteOpenHelper.java b/src/org/connectbot/util/RobustSQLiteOpenHelper.java index 00d37ef..b19f09d 100644 --- a/src/org/connectbot/util/RobustSQLiteOpenHelper.java +++ b/src/org/connectbot/util/RobustSQLiteOpenHelper.java @@ -34,6 +34,7 @@ import android.database.sqlite.SQLiteDatabase.CursorFactory; */ public abstract class RobustSQLiteOpenHelper extends SQLiteOpenHelper { private static List mTableNames = new LinkedList(); + private static List mIndexNames = new LinkedList(); public RobustSQLiteOpenHelper(Context context, String name, CursorFactory factory, int version) { @@ -44,6 +45,10 @@ public abstract class RobustSQLiteOpenHelper extends SQLiteOpenHelper { mTableNames.add(tableName); } + protected static void addIndexName(String indexName) { + mIndexNames.add(indexName); + } + @Override public void onCreate(SQLiteDatabase db) { dropAllTables(db); @@ -117,6 +122,8 @@ public abstract class RobustSQLiteOpenHelper extends SQLiteOpenHelper { } private void dropAllTablesWithPrefix(SQLiteDatabase db, String prefix) { + for (String indexName : mIndexNames) + db.execSQL("DROP INDEX IF EXISTS " + prefix + indexName); for (String tableName : mTableNames) db.execSQL("DROP TABLE IF EXISTS " + prefix + tableName); } -- cgit v1.2.3