From bff5ce96b051e38bdaa58e42932d6c13d26858da Mon Sep 17 00:00:00 2001 From: misaochan Date: Thu, 27 Oct 2016 16:09:47 +1300 Subject: [PATCH] Add filterYears method --- .../commons/category/CategorizationFragment.java | 11 +---------- .../free/nrw/commons/category/PrefixUpdater.java | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java b/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java index cc81c0a67..aad549bef 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java @@ -222,16 +222,7 @@ public class CategorizationFragment extends Fragment { //Needs to be an ArrayList and not a List unless we want to modify a big portion of preexisting code ArrayList mergedItemsList = new ArrayList(mergedItems); - //Copy to Iterator to prevent ConcurrentModificationException when removing item - for(Iterator item = mergedItemsList.iterator(); item.hasNext();) { - String s = item.next(); - - //Check if s contains a 4-digit word anywhere within the string (.* is wildcard) - if(s.matches(".*(19|20)\\d{2}.*")) { - Log.d(TAG, "Filtering out year " + s); - item.remove(); - } - } + Log.d(TAG, "Merged item list: " + mergedItemsList); return mergedItemsList; diff --git a/app/src/main/java/fr/free/nrw/commons/category/PrefixUpdater.java b/app/src/main/java/fr/free/nrw/commons/category/PrefixUpdater.java index b095bfe6a..2be982ff6 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/PrefixUpdater.java +++ b/app/src/main/java/fr/free/nrw/commons/category/PrefixUpdater.java @@ -10,6 +10,7 @@ import org.mediawiki.api.MWApi; import java.io.IOException; import java.util.ArrayList; +import java.util.Iterator; import javax.net.ssl.SSLPeerUnverifiedException; @@ -41,6 +42,21 @@ public class PrefixUpdater extends AsyncTask> { catFragment.categoriesSkip.setVisibility(View.GONE); } + protected ArrayList filterYears(ArrayList items) { + //Copy to Iterator to prevent ConcurrentModificationException when removing item + for(Iterator item = items.iterator(); item.hasNext();) { + String s = item.next(); + + //Check if s contains a 4-digit word anywhere within the string (.* is wildcard) + if(s.matches(".*(19|20)\\d{2}.*")) { + Log.d(TAG, "Filtering out year " + s); + item.remove(); + } + } + + return items; + } + @Override protected ArrayList doInBackground(Void... voids) { //If user hasn't typed anything in yet, get GPS and recent items