Skip to content

Commit e712794

Browse files
committed
With tests
1 parent 8dc8baf commit e712794

File tree

4 files changed

+113
-7
lines changed

4 files changed

+113
-7
lines changed

app/src/main/java/fr/free/nrw/commons/mwapi/OkHttpJsonApiClient.java

+1-4
Original file line numberDiff line numberDiff line change
@@ -235,11 +235,8 @@ public Single<Media> getPictureOfTheDay() {
235235

236236
return Single.fromCallable(() -> {
237237
Response response = okHttpClient.newCall(request).execute();
238-
if (response != null && response.body() != null && response.isSuccessful()) {
238+
if (response.body() != null && response.isSuccessful()) {
239239
String json = response.body().string();
240-
if (json == null) {
241-
return null;
242-
}
243240
MwQueryResponse mwQueryPage = gson.fromJson(json, MwQueryResponse.class);
244241
return Media.from(mwQueryPage.query().firstPage());
245242
}

app/src/main/java/fr/free/nrw/commons/utils/MediaDataExtractorUtil.java

+11-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package fr.free.nrw.commons.utils;
22

33
import java.util.ArrayList;
4-
import java.util.Arrays;
54
import java.util.List;
65
import java.util.regex.Matcher;
76
import java.util.regex.Pattern;
@@ -34,8 +33,17 @@ public static ArrayList<String> extractCategories(String source) {
3433
* @return
3534
*/
3635
public static List<String> extractCategoriesFromList(String source) {
37-
String[] categories = source.split("\\|");
38-
return Arrays.asList(categories);
36+
if (StringUtils.isNullOrWhiteSpace(source)) {
37+
return new ArrayList<>();
38+
}
39+
String[] cats = source.split("\\|");
40+
List<String> categories = new ArrayList<>();
41+
for (String category : cats) {
42+
if (!StringUtils.isNullOrWhiteSpace(category.trim())) {
43+
categories.add(category);
44+
}
45+
}
46+
return categories;
3947
}
4048

4149
}

0 commit comments

Comments
 (0)