|
35 | 35 | import java.io.InputStream; |
36 | 36 | import java.nio.file.Files; |
37 | 37 | import java.nio.file.Path; |
38 | | -import java.util.ArrayList; |
39 | | -import java.util.Collections; |
40 | | -import java.util.Comparator; |
41 | | -import java.util.HashMap; |
42 | | -import java.util.List; |
43 | | -import java.util.Locale; |
44 | | -import java.util.Map; |
45 | | -import java.util.Optional; |
| 38 | +import java.util.*; |
46 | 39 | import java.util.concurrent.Semaphore; |
47 | 40 | import java.util.stream.Stream; |
48 | 41 |
|
@@ -125,16 +118,20 @@ public SearchResult search(DownloadProvider downloadProvider, String gameVersion |
125 | 118 | if (category != null && category.getSelf() instanceof CurseAddon.Category) { |
126 | 119 | categoryId = ((CurseAddon.Category) category.getSelf()).getId(); |
127 | 120 | } |
128 | | - Response<List<CurseAddon>> response = withApiKey(HttpRequest.GET(downloadProvider.injectURL(NetworkUtils.withQuery(PREFIX + "/v1/mods/search", mapOf( |
129 | | - pair("gameId", "432"), |
130 | | - pair("classId", Integer.toString(section)), |
131 | | - pair("categoryId", Integer.toString(categoryId)), |
132 | | - pair("gameVersion", gameVersion), |
133 | | - pair("searchFilter", searchFilter), |
134 | | - pair("sortField", Integer.toString(toModsSearchSortField(sortType))), |
135 | | - pair("sortOrder", toSortOrder(sortOrder)), |
136 | | - pair("index", Integer.toString(pageOffset * pageSize)), |
137 | | - pair("pageSize", Integer.toString(pageSize))))))) |
| 121 | + |
| 122 | + var query = new LinkedHashMap<String, String>(); |
| 123 | + query.put("gameId", "432"); |
| 124 | + query.put("classId", Integer.toString(section)); |
| 125 | + if (categoryId != 0) |
| 126 | + query.put("categoryId", Integer.toString(categoryId)); |
| 127 | + query.put("gameVersion", gameVersion); |
| 128 | + query.put("searchFilter", searchFilter); |
| 129 | + query.put("sortField", Integer.toString(toModsSearchSortField(sortType))); |
| 130 | + query.put("sortOrder", toSortOrder(sortOrder)); |
| 131 | + query.put("index", Integer.toString(pageOffset * pageSize)); |
| 132 | + query.put("pageSize", Integer.toString(pageSize)); |
| 133 | + |
| 134 | + Response<List<CurseAddon>> response = withApiKey(HttpRequest.GET(downloadProvider.injectURL(NetworkUtils.withQuery(PREFIX + "/v1/mods/search", query)))) |
138 | 135 | .getJson(Response.typeOf(listTypeOf(CurseAddon.class))); |
139 | 136 | if (searchFilter.isEmpty()) { |
140 | 137 | return new SearchResult(response.getData().stream().map(CurseAddon::toMod), calculateTotalPages(response, pageSize)); |
|
0 commit comments