summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/contacts/ContactsDatabaseHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/providers/contacts/ContactsDatabaseHelper.java')
-rw-r--r--src/com/android/providers/contacts/ContactsDatabaseHelper.java34
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) {