package com.smartgwt.client.cordova.contacts;
import com.google.gwt.core.client.JsArrayString;
import com.smartgwt.client.cordova.types.ContactFilterProperty;
import com.smartgwt.client.util.JSOHelper;
public final class Contacts {
public static void find(ContactFilterProperty[] contactFields, FindContactsSuccessFunction contactSuccess) {
find(contactFields, contactSuccess, null);
}
public static void find(ContactFilterProperty[] contactFields, FindContactsSuccessFunction contactSuccess, ContactErrorFunction contactError) {
find(contactFields, contactSuccess, contactError, null);
}
public static void find(ContactFilterProperty[] contactFields, FindContactsSuccessFunction contactSuccess, ContactErrorFunction contactError, ContactFindOptions contactFindOptions) {
if (contactSuccess == null) throw new NullPointerException("contactSuccess");
final JsArrayString f = (JsArrayString)JSOHelper.convertToJavaScriptArray(contactFields == null ? new String[] { "*" } : contactFields);
nativeFind(f, contactSuccess, contactError, contactFindOptions);
}
private static native void nativeFind(JsArrayString contactFields, FindContactsSuccessFunction contactSuccess, ContactErrorFunction contactError, ContactFindOptions contactFindOptions) /*-{
$wnd.navigator.contacts.find(contactFields, $entry(function (contacts) {
contactSuccess.@com.smartgwt.client.cordova.contacts.FindContactsSuccessFunction::execute(Lcom/google/gwt/core/client/JsArray;)(contacts);
}), contactError == null ? null : $entry(function (error) {
if (contactError) contactError.@com.smartgwt.client.cordova.contacts.ContactErrorFunction::execute(Lcom/smartgwt/client/cordova/contacts/ContactError;)(error);
}), contactFindOptions);
}-*/;
private Contacts() {}
}