Using instance to override instead of subclass

This commit is contained in:
misaochan 2016-01-24 21:22:48 +13:00
parent a51f4252bb
commit 55675f4428

View file

@ -53,8 +53,8 @@ public class CategorizationFragment extends SherlockFragment{
protected HashMap<String, ArrayList<String>> categoriesCache;
private final Set<String> results = new LinkedHashSet<String>();
PrefixUpdaterSub prefixUpdaterSub = null;
MethodAUpdaterSub methodAUpdaterSub = null;
//PrefixUpdaterSub prefixUpdaterSub = null;
//MethodAUpdaterSub methodAUpdaterSub = null;
private ContentProviderClient client;
@ -330,14 +330,11 @@ public class CategorizationFragment extends SherlockFragment{
return rootView;
}
private void requestSearchResults() {
final CountDownLatch latch = new CountDownLatch(1);
class PrefixUpdaterSub extends PrefixUpdater {
public PrefixUpdaterSub() {
super(CategorizationFragment.this);
}
Utils.executeAsyncTask(new PrefixUpdater(this) {
@Override
protected ArrayList<String> doInBackground(Void... voids) {
ArrayList<String> result = new ArrayList<String>();
@ -360,15 +357,9 @@ public class CategorizationFragment extends SherlockFragment{
Log.d(TAG, "Prefix result: " + result);
categoriesAdapter.notifyDataSetChanged();
}
}
class MethodAUpdaterSub extends MethodAUpdater {
public MethodAUpdaterSub() {
super(CategorizationFragment.this);
}
});
Utils.executeAsyncTask(new MethodAUpdater(this) {
@Override
protected void onPostExecute(ArrayList<String> result) {
results.clear();
@ -380,11 +371,14 @@ public class CategorizationFragment extends SherlockFragment{
latch.countDown();
}
});
}
private void startUpdatingCategoryList() {
if (prefixUpdaterSub != null) {
requestSearchResults();
/*
if (prefixUpdater != null) {
prefixUpdaterSub.cancel(true);
}
@ -398,6 +392,7 @@ public class CategorizationFragment extends SherlockFragment{
Utils.executeAsyncTask(prefixUpdaterSub);
Utils.executeAsyncTask(methodAUpdaterSub);
Log.d(TAG, "Final results: " + results);
*/
}