summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/contacts/LegacyApiSupport.java
diff options
context:
space:
mode:
authorDmitri Plotnikov <dplotnikov@google.com>2009-09-23 18:16:12 -0700
committerDmitri Plotnikov <dplotnikov@google.com>2009-09-24 13:30:20 -0700
commita23cd5b6f478f6c9dda54173e84bd0098b9f3364 (patch)
tree8dfac9fddf6e9922b2329c04a891f095283a9d39 /src/com/android/providers/contacts/LegacyApiSupport.java
parent7d9fdcf8346f789436148eff1f00e8f49b370ef0 (diff)
downloadpackages_providers_ContactsProvider-a23cd5b6f478f6c9dda54173e84bd0098b9f3364.zip
packages_providers_ContactsProvider-a23cd5b6f478f6c9dda54173e84bd0098b9f3364.tar.gz
packages_providers_ContactsProvider-a23cd5b6f478f6c9dda54173e84bd0098b9f3364.tar.bz2
Storing social status updates in a persistent table.
Change-Id: Ic6be86385a4e456ae164499aeec40900294fb118
Diffstat (limited to 'src/com/android/providers/contacts/LegacyApiSupport.java')
-rw-r--r--src/com/android/providers/contacts/LegacyApiSupport.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/com/android/providers/contacts/LegacyApiSupport.java b/src/com/android/providers/contacts/LegacyApiSupport.java
index a1eb139..fc010ed 100644
--- a/src/com/android/providers/contacts/LegacyApiSupport.java
+++ b/src/com/android/providers/contacts/LegacyApiSupport.java
@@ -21,6 +21,7 @@ import com.android.providers.contacts.OpenHelper.GroupsColumns;
import com.android.providers.contacts.OpenHelper.MimetypesColumns;
import com.android.providers.contacts.OpenHelper.PhoneColumns;
import com.android.providers.contacts.OpenHelper.RawContactsColumns;
+import com.android.providers.contacts.OpenHelper.StatusUpdatesColumns;
import com.android.providers.contacts.OpenHelper.Tables;
import android.accounts.Account;
@@ -356,7 +357,15 @@ public class LegacyApiSupport {
sPeopleProjectionMap.put(People.IM_HANDLE, People.IM_HANDLE);
sPeopleProjectionMap.put(People.IM_ACCOUNT, People.IM_ACCOUNT);
sPeopleProjectionMap.put(People.PRESENCE_STATUS, People.PRESENCE_STATUS);
- sPeopleProjectionMap.put(People.PRESENCE_CUSTOM_STATUS, People.PRESENCE_CUSTOM_STATUS);
+ sPeopleProjectionMap.put(People.PRESENCE_CUSTOM_STATUS,
+ "(SELECT " + StatusUpdatesColumns.STATUS +
+ " FROM " + Tables.STATUS_UPDATES +
+ " JOIN " + Tables.DATA +
+ " ON(" + StatusUpdatesColumns.DATA_ID + "=" + DataColumns.CONCRETE_ID + ")" +
+ " WHERE " + DataColumns.CONCRETE_RAW_CONTACT_ID + "=people." + People._ID +
+ " ORDER BY " + StatusUpdatesColumns.TIMESTAMP + " DESC " +
+ " LIMIT 1" +
+ ") AS " + People.PRESENCE_CUSTOM_STATUS);
sOrganizationProjectionMap = new HashMap<String, String>();
sOrganizationProjectionMap.put(android.provider.Contacts.Organizations._ID,