package ca.ualberta.cs.cmput301f14t14.questionapp.data.threading; import java.io.IOException; import java.util.ArrayList; import java.util.List; import android.content.Context; import android.util.Log; import ca.ualberta.cs.cmput301f14t14.questionapp.data.ESSearch; import ca.ualberta.cs.cmput301f14t14.questionapp.data.GenericSearchItem; public class ESSearchTask extends AbstractDataManagerTask<String, Void, List<GenericSearchItem>> { private Context context; public ESSearchTask(Context c) { super(c); context = c; } @Override protected List<GenericSearchItem> doInBackground(String... arg0) { String query = arg0[0]; List<GenericSearchItem> gSIList = null; ESSearch es = new ESSearch(context); try{ gSIList = es.search(query); }catch(IOException e){ Log.e("ESSearch", "Failed to get search results"); gSIList = new ArrayList<GenericSearchItem>(); } return gSIList; } @Override protected void onPostExecute(List<GenericSearchItem> la) { if (callback == null){ return; } callback.run(la); } }