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 cd42cf15c..340624074 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 @@ -127,38 +127,8 @@ public class CategorizationFragment extends Fragment { String title = titleDesc.getString("Title", ""); Log.d(TAG, "Title: " + title); - //TODO: Split this into AsyncTask + //TODO: Add call to TitleCategories AsyncTask here - MWApi api = CommonsApplication.createMWApi(); - ApiResult result; - - //URL https://commons.wikimedia.org/w/api.php?action=query&format=xml&list=search&srwhat=text&srenablerewrites=1&srnamespace=14&srlimit=10&srsearch= - try { - result = api.action("query") - .param("format", "xml") - .param("list", "search") - .param("srwhat", "text") - .param("srnamespace", "14") - .param("srlimit", SEARCH_CATS_LIMIT) - .param("srsearch", title) - .get(); - Log.d(TAG, "Searching for cats for title: " + result.toString()); - } catch (IOException e) { - Log.e(TAG, "IO Exception: ", e); - //Return empty arraylist - return items; - } - - ArrayList categoryNodes = result.getNodes("/api/query/search/p/@title"); - for(ApiResult categoryNode: categoryNodes) { - String cat = categoryNode.getDocument().getTextContent(); - String catString = cat.replace("Category:", ""); - items.add(catString); - } - - Log.d(TAG, "Title cat query results: " + items); - - return items; } /** diff --git a/app/src/main/java/fr/free/nrw/commons/category/TitleCategories.java b/app/src/main/java/fr/free/nrw/commons/category/TitleCategories.java new file mode 100644 index 000000000..49a938bc1 --- /dev/null +++ b/app/src/main/java/fr/free/nrw/commons/category/TitleCategories.java @@ -0,0 +1,65 @@ +package fr.free.nrw.commons.category; + +import android.os.AsyncTask; +import android.text.TextUtils; +import android.util.Log; +import android.view.View; + +import org.mediawiki.api.ApiResult; +import org.mediawiki.api.MWApi; + +import java.io.IOException; +import java.util.ArrayList; + +import fr.free.nrw.commons.CommonsApplication; + +/** + * Created by misao on 11-Oct-16. + */ + +public class TitleCategories extends AsyncTask> { + + @Override + protected void onPreExecute() { + super.onPreExecute(); + } + + @Override + protected ArrayList doInBackground(Void... voids) { + + + //TODO: Split this into AsyncTask + + MWApi api = CommonsApplication.createMWApi(); + ApiResult result; + + //URL https://commons.wikimedia.org/w/api.php?action=query&format=xml&list=search&srwhat=text&srenablerewrites=1&srnamespace=14&srlimit=10&srsearch= + try { + result = api.action("query") + .param("format", "xml") + .param("list", "search") + .param("srwhat", "text") + .param("srnamespace", "14") + .param("srlimit", SEARCH_CATS_LIMIT) + .param("srsearch", title) + .get(); + Log.d(TAG, "Searching for cats for title: " + result.toString()); + } catch (IOException e) { + Log.e(TAG, "IO Exception: ", e); + //Return empty arraylist + return items; + } + + ArrayList categoryNodes = result.getNodes("/api/query/search/p/@title"); + for(ApiResult categoryNode: categoryNodes) { + String cat = categoryNode.getDocument().getTextContent(); + String catString = cat.replace("Category:", ""); + items.add(catString); + } + + Log.d(TAG, "Title cat query results: " + items); + + return items; + } + +}