public class ContactsGetterBuilder
extends java.lang.Object
| Constructor and Description |
|---|
ContactsGetterBuilder(android.content.Context ctx) |
| Modifier and Type | Method and Description |
|---|---|
ContactsGetterBuilder |
addField(FieldType... fieldType)
Enables fields that should be queried
|
ContactsGetterBuilder |
allFields()
Enables all fields for query
|
ContactsGetterBuilder |
applyCustomFilter(BaseFilter filter)
Applies custom filter to query on contacts list
|
java.util.List<ContactData> |
buildList()
Builds list of contacts
|
<T extends ContactData> |
buildList(java.lang.Class<? extends ContactData> T)
Builds list of contacts
|
ContactData |
firstOrNull()
Get first contact of null if no contacts with these params
|
<T extends ContactData> |
firstOrNull(java.lang.Class<T> T)
Get first contact of null if no contacts with these params
|
ContactData |
getById(int id)
Gets contact by local id
|
<T extends ContactData> |
getById(int id,
java.lang.Class<T> T)
Gets contact by local id
|
ContactsGetterBuilder |
onlyWithPhones()
Should get all contacts or contacts only with phones
|
ContactsGetterBuilder |
onlyWithPhotos()
Should get contacts only with photos or not
|
ContactsGetterBuilder |
setSortOrder(Sorting sortOrder)
Sets sort order for all contacts
|
ContactsGetterBuilder |
withAddress(java.lang.String number)
Searches for contacts with this number
Implicitly adds Address field
|
ContactsGetterBuilder |
withAddressLike(java.lang.String sequence)
Searches for addresses that contains this sequence
Implicitly adds Address field
|
ContactsGetterBuilder |
withEmail(java.lang.String email)
Searches for contacts with this email
Implicitly adds Email field
|
ContactsGetterBuilder |
withEmailLike(java.lang.String sequence)
Searches for contacts that contains sequence
Implicitly adds Email field
|
ContactsGetterBuilder |
withName(java.lang.String name)
Searches for contacts with this name
|
ContactsGetterBuilder |
withNameLike(java.lang.String nameLike)
Searches for contacts with name that contains sequence
|
ContactsGetterBuilder |
withPhone(java.lang.String number)
Searches for contacts with this number
|
ContactsGetterBuilder |
withPhoneLike(java.lang.String number)
Searches for contacts that contains this number sequence
|
public ContactsGetterBuilder setSortOrder(Sorting sortOrder)
Sets sort order for all contacts
Sort types could be found here Sorting
By default is ascending by display name
sortOrder - order to sortpublic ContactsGetterBuilder onlyWithPhones()
Should get all contacts or contacts only with phones
Note : Will automatically query for phone numbers.
No need to explicitly add Phone numbers to field list
By default returns all contactspublic ContactsGetterBuilder onlyWithPhotos()
Should get contacts only with photos or not
By default returns all contactspublic ContactsGetterBuilder withNameLike(java.lang.String nameLike)
nameLike - sequence to search forpublic ContactsGetterBuilder withName(java.lang.String name)
name - name to search forpublic ContactsGetterBuilder withPhoneLike(java.lang.String number)
number - number sequence to search forpublic ContactsGetterBuilder withPhone(java.lang.String number)
number - number to search forpublic ContactsGetterBuilder withEmail(java.lang.String email)
email - email to search forpublic ContactsGetterBuilder withEmailLike(java.lang.String sequence)
sequence - sequence to search forpublic ContactsGetterBuilder withAddress(java.lang.String number)
number - number to search forpublic ContactsGetterBuilder withAddressLike(java.lang.String sequence)
sequence - sequence to search forpublic ContactsGetterBuilder applyCustomFilter(BaseFilter filter)
Applies custom filter to query on contacts list
Additional filters and example implementations could be found here FilterUtils
filter - filter to applypublic ContactsGetterBuilder allFields()
Enables all fields for query
Note : Consider to enable fields you need with addField(FieldType...) to increase performance
public ContactsGetterBuilder addField(FieldType... fieldType)
Enables fields that should be queried
Number of fields influence on performance
fieldType - field type you want to addpublic <T extends ContactData> java.util.List<T> buildList(java.lang.Class<? extends ContactData> T)
T - class of object you want to get datapublic java.util.List<ContactData> buildList()
public ContactData getById(int id)
id - id to search forpublic <T extends ContactData> T getById(int id, java.lang.Class<T> T)
id - id to search forT - class of object you want to get datapublic ContactData firstOrNull()
public <T extends ContactData> T firstOrNull(java.lang.Class<T> T)
T - class of object you want to get data