aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDmitri Plotnikov <dplotnikov@google.com>2009-09-24 17:10:47 -0700
committerDmitri Plotnikov <dplotnikov@google.com>2009-09-25 15:54:17 -0700
commitd60cf9ba1d039f1a22375f56c18356e0d4f8ca14 (patch)
tree015c96a62ed85b67d152db7c036a7ec9042b5608 /src
parenta3bd0246ca3741877488bca7aadd91c79b2fd8d2 (diff)
downloadContactsProvider-d60cf9ba1d039f1a22375f56c18356e0d4f8ca14.tar.gz
As we are now searching for contacts by organization, adding support for search by email as well.
Change-Id: I0856f5a6391bc7f11f8e7063e0bb2cc908ce5348
Diffstat (limited to 'src')
-rw-r--r--src/com/android/providers/contacts/ContactsProvider2.java26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/com/android/providers/contacts/ContactsProvider2.java b/src/com/android/providers/contacts/ContactsProvider2.java
index be95f709..4d85dd1d 100644
--- a/src/com/android/providers/contacts/ContactsProvider2.java
+++ b/src/com/android/providers/contacts/ContactsProvider2.java
@@ -4553,14 +4553,19 @@ public class ContactsProvider2 extends SQLiteContentProvider implements OnAccoun
}
public void appendContactFilterAsNestedQuery(StringBuilder sb, String filterParam) {
- sb.append("(SELECT DISTINCT " + RawContacts.CONTACT_ID + " FROM " + Tables.RAW_CONTACTS
- + " JOIN name_lookup ON(" + RawContactsColumns.CONCRETE_ID + "=raw_contact_id)"
- + " WHERE normalized_name GLOB '");
+ sb.append("(" +
+ "SELECT DISTINCT " + RawContacts.CONTACT_ID +
+ " FROM " + Tables.RAW_CONTACTS +
+ " JOIN " + Tables.NAME_LOOKUP +
+ " ON(" + RawContactsColumns.CONCRETE_ID + "="
+ + NameLookupColumns.RAW_CONTACT_ID + ")" +
+ " WHERE normalized_name GLOB '");
sb.append(NameNormalizer.normalize(filterParam));
- sb.append("*' AND ("
- + NameLookupColumns.NAME_TYPE + "=" + NameLookupType.NAME_COLLATION_KEY
- + " OR "
- + NameLookupColumns.NAME_TYPE + "=" + NameLookupType.NICKNAME + "))");
+ sb.append("*' AND " + NameLookupColumns.NAME_TYPE + " IN("
+ + NameLookupType.NAME_COLLATION_KEY + ","
+ + NameLookupType.EMAIL_BASED_NICKNAME + ","
+ + NameLookupType.NICKNAME + ","
+ + NameLookupType.ORGANIZATION + "))");
}
public String getRawContactsByFilterAsNestedQuery(String filterParam) {
@@ -4576,11 +4581,16 @@ public class ContactsProvider2 extends SQLiteContentProvider implements OnAccoun
private void appendRawContactsByNormalizedNameFilter(StringBuilder sb, String normalizedName,
String limit) {
- sb.append("(SELECT DISTINCT raw_contact_id FROM name_lookup WHERE normalized_name GLOB '");
+ sb.append("(" +
+ "SELECT DISTINCT " + NameLookupColumns.RAW_CONTACT_ID +
+ " FROM " + Tables.NAME_LOOKUP +
+ " WHERE " + NameLookupColumns.NORMALIZED_NAME +
+ " GLOB '");
sb.append(normalizedName);
sb.append("*' AND " + NameLookupColumns.NAME_TYPE + " IN ("
+ NameLookupType.NAME_COLLATION_KEY + ","
+ NameLookupType.NICKNAME + ","
+ + NameLookupType.EMAIL_BASED_NICKNAME + ","
+ NameLookupType.ORGANIZATION + ")");
if (limit != null) {