diff options
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) { |