diff options
author | Debashish Chatterjee <debashishc@google.com> | 2011-07-04 18:08:38 +0100 |
---|---|---|
committer | Debashish Chatterjee <debashishc@google.com> | 2011-07-05 11:55:26 +0100 |
commit | 069fdf5902415ebd6c92e5d889740e0d50cfec8d (patch) | |
tree | 57590e774ecc6d82c0e0b272851278d8feab0232 /src/com/android/providers/contacts/ContactsDatabaseHelper.java | |
parent | 6fbb4b739c288395bd80343400d3455b0292a0fd (diff) | |
download | packages_providers_ContactsProvider-069fdf5902415ebd6c92e5d889740e0d50cfec8d.zip packages_providers_ContactsProvider-069fdf5902415ebd6c92e5d889740e0d50cfec8d.tar.gz packages_providers_ContactsProvider-069fdf5902415ebd6c92e5d889740e0d50cfec8d.tar.bz2 |
Added 'voicemail_status' table to contacts database.
Changes in ContactsDatabaseHelper to create a new table
'voicemail_status' table within contacts database. This table shall be
used by the voicemail content provider to serve /status/ uris.
See bug b/4968719 for more details.
Change-Id: Iddddd9f8d4a5cf77ff097204a6139cc9e923d74a
Diffstat (limited to 'src/com/android/providers/contacts/ContactsDatabaseHelper.java')
-rw-r--r-- | src/com/android/providers/contacts/ContactsDatabaseHelper.java | 34 |
1 files changed, 32 insertions, 2 deletions
diff --git a/src/com/android/providers/contacts/ContactsDatabaseHelper.java b/src/com/android/providers/contacts/ContactsDatabaseHelper.java index 2e2af94..69cf2b4 100644 --- a/src/com/android/providers/contacts/ContactsDatabaseHelper.java +++ b/src/com/android/providers/contacts/ContactsDatabaseHelper.java @@ -65,6 +65,7 @@ import android.provider.ContactsContract.RawContacts; import android.provider.ContactsContract.Settings; import android.provider.ContactsContract.StatusUpdates; import android.provider.SocialContract.Activities; +import android.provider.VoicemailContract; import android.provider.VoicemailContract.Voicemails; import android.telephony.PhoneNumberUtils; import android.text.TextUtils; @@ -97,7 +98,7 @@ import java.util.Locale; * 600-699 Ice Cream Sandwich * </pre> */ - static final int DATABASE_VERSION = 603; + static final int DATABASE_VERSION = 604; private static final String DATABASE_NAME = "contacts2.db"; private static final String DATABASE_PRESENCE = "presence_db"; @@ -124,6 +125,7 @@ import java.util.Locale; public static final String DIRECTORIES = "directories"; public static final String DEFAULT_DIRECTORY = "default_directory"; public static final String SEARCH_INDEX = "search_index"; + public static final String VOICEMAIL_STATUS = "voicemail_status"; /** * For {@link ContactsContract.DataUsageFeedback}. The table structure itself @@ -792,7 +794,7 @@ import java.util.Locale; @Override public void onCreate(SQLiteDatabase db) { - Log.i(TAG, "Bootstrapping database"); + Log.i(TAG, "Bootstrapping database version: " + DATABASE_VERSION); mSyncState.createDatabase(db); @@ -1080,6 +1082,17 @@ import java.util.Locale; Voicemails.STATE + " INTEGER" + ");"); + // Voicemail source status table. + db.execSQL("CREATE TABLE " + Tables.VOICEMAIL_STATUS + " (" + + VoicemailContract.Status._ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + + VoicemailContract.Status.SOURCE_PACKAGE + " TEXT UNIQUE NOT NULL," + + VoicemailContract.Status.SETTINGS_URI + " TEXT," + + VoicemailContract.Status.VOICEMAIL_ACCESS_URI + " TEXT," + + VoicemailContract.Status.CONFIGURATION_STATE + " INTEGER," + + VoicemailContract.Status.DATA_CHANNEL_STATE + " INTEGER," + + VoicemailContract.Status.NOTIFICATION_CHANNEL_STATE + " INTEGER" + + ");"); + // Activities table db.execSQL("CREATE TABLE " + Tables.ACTIVITIES + " (" + Activities._ID + " INTEGER PRIMARY KEY AUTOINCREMENT," + @@ -1969,6 +1982,11 @@ import java.util.Locale; oldVersion = 603; } + if (oldVersion < 604) { + upgradeToVersion604(db); + oldVersion = 604; + } + if (upgradeViewsAndTriggers) { createContactsViews(db); createGroupsView(db); @@ -3043,6 +3061,18 @@ import java.util.Locale; db.execSQL("ALTER TABLE calls ADD state INTEGER;"); } + private void upgradeToVersion604(SQLiteDatabase db) { + db.execSQL("CREATE TABLE voicemail_status (" + + "_id INTEGER PRIMARY KEY AUTOINCREMENT," + + "source_package TEXT UNIQUE NOT NULL," + + "settings_uri TEXT," + + "voicemail_access_uri TEXT," + + "configuration_state INTEGER," + + "data_channel_state INTEGER," + + "notification_channel_state INTEGER" + + ");"); + } + public String extractHandleFromEmailAddress(String email) { Rfc822Token[] tokens = Rfc822Tokenizer.tokenize(email); if (tokens.length == 0) { |