DO NOT MERGE Remove Yenta experiment (1/2)

Test: see I9e270d4c31b7a015c2bc9d421e3d841fb5f2cf85
Bug: 32948565
Change-Id: Ifbfb05f5004c017e4fcb202b85b25d4bedc12756
diff --git a/src-bind/com/android/contactsbind/ObjectFactory.java b/src-bind/com/android/contactsbind/ObjectFactory.java
index af11c90..6697ebc 100644
--- a/src-bind/com/android/contactsbind/ObjectFactory.java
+++ b/src-bind/com/android/contactsbind/ObjectFactory.java
@@ -14,7 +14,6 @@
 package com.android.contactsbind;
 
 import com.android.contacts.common.logging.Logger;
-import com.android.contactsbind.search.AutocompleteHelper;
 import com.android.contacts.common.util.DeviceLocalAccountTypeFactory;
 
 import android.app.Fragment;
@@ -31,10 +30,6 @@
         return null;
     }
 
-    public static AutocompleteHelper getAutocompleteHelper(Context context) {
-        return null;
-    }
-
     public static DeviceLocalAccountTypeFactory getDeviceLocalAccountTypeFactory(Context context) {
         return new DeviceLocalAccountTypeFactory.Default(context);
     }
diff --git a/src/com/android/contacts/common/Experiments.java b/src/com/android/contacts/common/Experiments.java
index b182491..f1fc274 100644
--- a/src/com/android/contacts/common/Experiments.java
+++ b/src/com/android/contacts/common/Experiments.java
@@ -49,16 +49,6 @@
     public static final String PULL_TO_REFRESH_CANCEL_REFRESH_MILLIS =
             "PullToRefresh__cancel_refresh_millis";
 
-    /**
-     * Search study boolean indicating whether to inject yenta search results before CP2 results.
-     */
-    public static final String SEARCH_YENTA = "Search__yenta";
-
-    /**
-     * The time to wait for Yenta search results before giving up.
-     */
-    public static final String SEARCH_YENTA_TIMEOUT_MILLIS = "Search__yenta_timeout";
-
     private Experiments() {
     }
 }
diff --git a/src/com/android/contacts/common/list/DefaultContactListAdapter.java b/src/com/android/contacts/common/list/DefaultContactListAdapter.java
index cea2062..5827930 100644
--- a/src/com/android/contacts/common/list/DefaultContactListAdapter.java
+++ b/src/com/android/contacts/common/list/DefaultContactListAdapter.java
@@ -116,13 +116,6 @@
                 loader.setUri(builder.build());
                 loader.setProjection(getProjection(true));
                 sortOrder = STREQUENT_SORT;
-                if (Flags.getInstance().getBoolean(Experiments.SEARCH_YENTA)
-                        && loader instanceof FavoritesAndContactsLoader
-                        && directoryId == Directory.DEFAULT) {
-                    final FavoritesAndContactsLoader favoritesAndContactsLoader =
-                            (FavoritesAndContactsLoader) loader;
-                    favoritesAndContactsLoader.setAutocompleteQuery(query);
-                }
             }
         } else {
             final ContactListFilter filter = getFilter();
diff --git a/src/com/android/contacts/common/list/FavoritesAndContactsLoader.java b/src/com/android/contacts/common/list/FavoritesAndContactsLoader.java
index e112846..422cf7c 100644
--- a/src/com/android/contacts/common/list/FavoritesAndContactsLoader.java
+++ b/src/com/android/contacts/common/list/FavoritesAndContactsLoader.java
@@ -21,37 +21,24 @@
 import android.database.MergeCursor;
 import android.os.Bundle;
 import android.provider.ContactsContract.Contacts;
-import android.util.Log;
 
-import com.android.contacts.common.Experiments;
-import com.android.contactsbind.ObjectFactory;
-import com.android.contactsbind.experiments.Flags;
-import com.android.contactsbind.search.AutocompleteHelper;
 import com.google.common.collect.Lists;
 
 import java.util.List;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
 
 /**
  * A loader for use in the default contact list, which will also query for favorite contacts
  * if configured to do so.
  */
-public class FavoritesAndContactsLoader extends CursorLoader implements AutocompleteHelper.Listener {
+public class FavoritesAndContactsLoader extends CursorLoader {
 
     private boolean mLoadFavorites;
 
     private String[] mProjection;
 
-    private String mAutocompleteQuery;
-    private CountDownLatch mAutocompleteLatch = new CountDownLatch(1);
-    private Cursor mAutocompleteCursor;
-    private int mAutocompleteTimeout;
 
     public FavoritesAndContactsLoader(Context context) {
         super(context);
-        mAutocompleteTimeout = Flags.getInstance().getInteger(
-                Experiments.SEARCH_YENTA_TIMEOUT_MILLIS);
     }
 
     /** Whether to load favorites and merge results in before any other results. */
@@ -59,10 +46,6 @@
         mLoadFavorites = flag;
     }
 
-    public void setAutocompleteQuery(String autocompleteQuery) {
-        mAutocompleteQuery = autocompleteQuery;
-    }
-
     public void setProjection(String[] projection) {
         super.setProjection(projection);
         mProjection = projection;
@@ -74,36 +57,8 @@
         if (mLoadFavorites) {
             cursors.add(loadFavoritesContacts());
         }
-
-        if (mAutocompleteQuery != null) {
-            final AutocompleteHelper autocompleteHelper =
-                    ObjectFactory.getAutocompleteHelper(getContext());
-            if (autocompleteHelper != null) {
-                autocompleteHelper.setListener(this);
-                autocompleteHelper.setProjection(mProjection);
-                autocompleteHelper.setQuery(mAutocompleteQuery);
-                try {
-                    if (!mAutocompleteLatch.await(mAutocompleteTimeout, TimeUnit.MILLISECONDS)) {
-                        logw("Timeout expired before receiving autocompletions");
-                    }
-                } catch (InterruptedException e) {
-                    logw("Interrupted while waiting for autocompletions");
-                }
-                if (mAutocompleteCursor != null) {
-                    cursors.add(mAutocompleteCursor);
-                    // TODO: exclude these results from the main loader results, see b/30742359
-                }
-            }
-        }
-
-        // TODO: if the autocomplete experiment in on, only show those results even if they're empty
-        final Cursor contactsCursor = mAutocompleteQuery == null ? loadContacts() : null;
-        if (mAutocompleteQuery == null) {
-            cursors.add(contactsCursor);
-        }
-        // Guard against passing an empty array to the MergeCursor constructor
-        if (cursors.isEmpty()) cursors.add(null);
-
+        final Cursor contactsCursor = loadContacts();
+        cursors.add(contactsCursor);
         return new MergeCursor(cursors.toArray(new Cursor[cursors.size()])) {
             @Override
             public Bundle getExtras() {
@@ -136,18 +91,4 @@
                 Contacts.CONTENT_URI, mProjection, selection.toString(), new String[]{"1"},
                 getSortOrder());
     }
-
-    @Override
-    public void onAutocompletesAvailable(Cursor cursor) {
-        if (cursor != null && cursor.getCount() > 0) {
-            mAutocompleteCursor = cursor;
-            mAutocompleteLatch.countDown();
-        }
-    }
-
-    private static void logw(String message) {
-        if (Log.isLoggable(AutocompleteHelper.TAG, Log.WARN)) {
-            Log.w(AutocompleteHelper.TAG, message);
-        }
-    }
 }