diff options
author | Debashish Chatterjee <debashishc@google.com> | 2011-07-04 11:14:05 +0100 |
---|---|---|
committer | Debashish Chatterjee <debashishc@google.com> | 2011-07-04 11:57:27 +0100 |
commit | e36e13b9e92759bb861a10ff22195853359c267d (patch) | |
tree | 7a500a1f9c1b27b18ade209570572de96c9253f2 /src/com/android/providers | |
parent | 06f995b614e0ebe59ff75f170e20ca96c9b17f0c (diff) | |
download | packages_providers_ContactsProvider-e36e13b9e92759bb861a10ff22195853359c267d.tar.gz packages_providers_ContactsProvider-e36e13b9e92759bb861a10ff22195853359c267d.tar.bz2 packages_providers_ContactsProvider-e36e13b9e92759bb861a10ff22195853359c267d.zip |
Modified voicemail provider to accept source_package as a param.
Voicemail provider now no more supports /source/ path. Also stopped
using deprecated fields of VoicemailContract.
Change-Id: Ieab08781bca6ec571f29c56ca55d84a8fd18547b
Diffstat (limited to 'src/com/android/providers')
-rw-r--r-- | src/com/android/providers/contacts/VoicemailContentProvider.java | 16 | ||||
-rw-r--r-- | src/com/android/providers/contacts/VoicemailUriType.java | 4 |
2 files changed, 6 insertions, 14 deletions
diff --git a/src/com/android/providers/contacts/VoicemailContentProvider.java b/src/com/android/providers/contacts/VoicemailContentProvider.java index fb0957cb..e7bd32f8 100644 --- a/src/com/android/providers/contacts/VoicemailContentProvider.java +++ b/src/com/android/providers/contacts/VoicemailContentProvider.java @@ -116,7 +116,7 @@ public class VoicemailContentProvider extends ContentProvider { return lookupMimeType(uriData); } // Not an individual voicemail - must be a directory listing type. - return VoicemailContract.DIR_TYPE; + return Voicemails.DIR_TYPE; } /** Query the db for the MIME type of the given URI, called only from {@link #getType(Uri)}. */ @@ -222,10 +222,7 @@ public class VoicemailContentProvider extends ContentProvider { SQLiteDatabase db = mDbHelper.getWritableDatabase(); long rowId = db.insert(VOICEMAILS_TABLE_NAME, null, copiedValues); if (rowId > 0) { - Uri newUri = ContentUris.withAppendedId( - Uri.withAppendedPath(VoicemailContract.CONTENT_URI_SOURCE, - copiedValues.getAsString(Voicemails.SOURCE_PACKAGE)), rowId); - + Uri newUri = ContentUris.withAppendedId(uriData.getUri(), rowId); if (sendProviderChangedNotification) { notifyChange(newUri, VoicemailContract.ACTION_NEW_VOICEMAIL, Intent.ACTION_PROVIDER_CHANGED); @@ -501,16 +498,13 @@ public class VoicemailContentProvider extends ContentProvider { /** Get a {@link UriData} corresponding to a given uri. */ private UriData createUriData(Uri uri) { + String sourcePackage = uri.getQueryParameter(VoicemailContract.PARAM_KEY_SOURCE_PACKAGE); List<String> segments = uri.getPathSegments(); switch (createUriMatcher().match(uri)) { case VOICEMAILS: - return new UriData(uri, null, null); + return new UriData(uri, null, sourcePackage); case VOICEMAILS_ID: - return new UriData(uri, segments.get(1), null); - case VOICEMAILS_SOURCE: - return new UriData(uri, null, segments.get(2)); - case VOICEMAILS_SOURCE_ID: - return new UriData(uri, segments.get(3), segments.get(2)); + return new UriData(uri, segments.get(1), sourcePackage); case NO_MATCH: throw new IllegalArgumentException("Invalid URI: " + uri); default: diff --git a/src/com/android/providers/contacts/VoicemailUriType.java b/src/com/android/providers/contacts/VoicemailUriType.java index 9e728a28..c3a33abe 100644 --- a/src/com/android/providers/contacts/VoicemailUriType.java +++ b/src/com/android/providers/contacts/VoicemailUriType.java @@ -23,9 +23,7 @@ import com.android.providers.contacts.util.UriType; enum VoicemailUriType implements UriType { NO_MATCH(null), VOICEMAILS("voicemail"), - VOICEMAILS_ID("voicemail/#"), - VOICEMAILS_SOURCE("voicemail/source/*"), - VOICEMAILS_SOURCE_ID("voicemail/source/*/#"); + VOICEMAILS_ID("voicemail/#"); private final String path; |