diff --git a/README.md b/README.md index b1bc04a..62bfc1a 100644 --- a/README.md +++ b/README.md @@ -4,19 +4,16 @@ Website for Jikan: https://jikan.moe/ To add to your project, head over to https://jitpack.io/#Doomsdayrs/Jikan4java and select the method you need to use! -**ALERT**: Connection classes are obsolete in the next version, do not use them. +**ALERT**: Connection classes are obsolete do not use them. ## Capabilities -- Everything except the below - - New things from v3.3 - +- Everything as detailed from [Here](https://jikan.docs.apiary.io/#) ## Basic documentation -For the next version [Here](https://github.com/Doomsdayrs/Jikan4java/blob/master/Documentation.md) Previous versions do not have such documentation -oh and remember i rarely test the methods~ +oh and remember i rarely test the methods~ So ill just pump out new versions for the smallest error ## Known issues - API issue of user object being returned as an array list when empty. Future update of api will let me return Related fields back to normal diff --git a/pom.xml b/pom.xml index 3d34669..6dc12bb 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.github.Doomsdayrs Jikan4java - 1.1.0 + 1.2.0 @@ -22,13 +22,13 @@ commons-lang commons-lang - 2.3 + 2.6 compile com.squareup.okhttp3 okhttp - 3.11.0 + 3.14.1 compile diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/AnimeUserListingSearch.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/AnimeUserListingSearch.java index c11c44e..2c65dfc 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/AnimeUserListingSearch.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/AnimeUserListingSearch.java @@ -2,10 +2,17 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.github.Doomsdayrs.Jikan4java.enums.Season; +import com.github.Doomsdayrs.Jikan4java.enums.SortBy; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.filters.UserListFilters; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.orderBy.ListOrderBy; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.status.AnimeListingStati; +import com.github.Doomsdayrs.Jikan4java.types.Main.User.Listing.AnimeList.AnimeList; import okhttp3.OkHttpClient; import okhttp3.Request; import org.json.simple.parser.JSONParser; +import java.util.concurrent.CompletableFuture; + /** * This file is part of Jikan4java. * Jikan4java is free software: you can redistribute it and/or modify @@ -24,7 +31,7 @@ * * @author github.com/doomsdayrs */ -public class AnimeUserListingSearch extends UserListingSearch { +public class AnimeUserListingSearch extends UserListingSearch { private int producer = 0; private int year = 0; private Season season = null; @@ -50,6 +57,105 @@ public AnimeUserListingSearch(Request.Builder builder, String username) { super(builder, username); } + public AnimeUserListingSearch setProducer(int producer) { + this.producer = producer; + return this; + } + + public AnimeUserListingSearch setYear(int year) { + this.year = year; + return this; + } + + public AnimeUserListingSearch setSeason(Season season) { + this.season = season; + return this; + } + + @Override + public AnimeUserListingSearch setQuery(String query) { + super.setQuery(query); + return this; + } + + @Override + public AnimeUserListingSearch setPage(int page) { + super.setPage(page); + return this; + } + + @Override + public AnimeUserListingSearch setSortBy(SortBy sortBy) { + super.setSortBy(sortBy); + return this; + } + + @Override + public AnimeUserListingSearch setOrderBy(ListOrderBy orderBy) { + super.setOrderBy(orderBy); + return this; + } + + @Override + public AnimeUserListingSearch setOrderBy2(ListOrderBy orderBy2) { + super.setOrderBy2(orderBy2); + return this; + } + + @Override + public AnimeUserListingSearch setFrom(int yyyy, int mm, int dd) { + super.setFrom(yyyy, mm, dd); + return this; + } + + @Override + public AnimeUserListingSearch setTo(int yyyy, int mm, int dd) { + super.setTo(yyyy, mm, dd); + return this; + } + + @Override + public AnimeUserListingSearch setFrom(int[] from) { + super.setFrom(from); + return this; + } + + @Override + public AnimeUserListingSearch setTo(int[] to) { + super.setTo(to); + return this; + } + + public AnimeUserListingSearch setListingStati(AnimeListingStati listingStati) { + super.setListingStati(listingStati); + return this; + } + + @Override + public AnimeUserListingSearch setUserListFilters(UserListFilters userListFilters) { + super.setUserListFilters(userListFilters); + return this; + } + + @Override + public AnimeUserListingSearch setUsername(String username) { + super.setUsername(username); + return this; + } + @Override + protected StringBuilder createURL() { + StringBuilder stringBuilder = super.createURL(); + if (producer != 0) + stringBuilder.append("&producer=").append(producer); + if (year != 0) + stringBuilder.append("&year=").append(year); + if (season != null) + stringBuilder.append("&season=").append(season); + return stringBuilder; + } + protected CompletableFuture getList() { + return retrieve(AnimeList.class, baseURL + "/user/" + username + this.createURL()); + } } diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/MangaUserListingSearch.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/MangaUserListingSearch.java index ba81f97..f533905 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/MangaUserListingSearch.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/MangaUserListingSearch.java @@ -1,10 +1,17 @@ package com.github.Doomsdayrs.Jikan4java.core.userListing; import com.fasterxml.jackson.databind.ObjectMapper; +import com.github.Doomsdayrs.Jikan4java.enums.SortBy; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.filters.UserListFilters; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.orderBy.ListOrderBy; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.status.MangaListingStati; +import com.github.Doomsdayrs.Jikan4java.types.Main.User.Listing.MangaList.MangaList; import okhttp3.OkHttpClient; import okhttp3.Request; import org.json.simple.parser.JSONParser; +import java.util.concurrent.CompletableFuture; + /** * This file is part of Jikan4java. * Jikan4java is free software: you can redistribute it and/or modify @@ -23,7 +30,7 @@ * * @author github.com/doomsdayrs */ -public class MangaUserListingSearch extends UserListingSearch { +public class MangaUserListingSearch extends UserListingSearch { private int magazine = 0; public MangaUserListingSearch(String username) { @@ -45,4 +52,92 @@ public MangaUserListingSearch(JSONParser jsonParser, String username) { public MangaUserListingSearch(Request.Builder builder, String username) { super(builder, username); } + + public MangaUserListingSearch setMagazine(int magazine) { + this.magazine = magazine; + return this; + } + + @Override + public MangaUserListingSearch setQuery(String query) { + super.setQuery(query); + return this; + } + + @Override + public MangaUserListingSearch setPage(int page) { + super.setPage(page); + return this; + } + + @Override + public MangaUserListingSearch setSortBy(SortBy sortBy) { + super.setSortBy(sortBy); + return this; + } + + @Override + public MangaUserListingSearch setOrderBy(ListOrderBy orderBy) { + super.setOrderBy(orderBy); + return this; + } + + @Override + public MangaUserListingSearch setOrderBy2(ListOrderBy orderBy2) { + super.setOrderBy2(orderBy2); + return this; + } + + @Override + public MangaUserListingSearch setFrom(int yyyy, int mm, int dd) { + super.setFrom(yyyy, mm, dd); + return this; + } + + @Override + public MangaUserListingSearch setTo(int yyyy, int mm, int dd) { + super.setTo(yyyy, mm, dd); + return this; + } + + @Override + public MangaUserListingSearch setFrom(int[] from) { + super.setFrom(from); + return this; + } + + @Override + public MangaUserListingSearch setTo(int[] to) { + super.setTo(to); + return this; + } + + public MangaUserListingSearch setListingStati(MangaListingStati listingStati) { + super.setListingStati(listingStati); + return this; + } + + @Override + public MangaUserListingSearch setUserListFilters(UserListFilters userListFilters) { + super.setUserListFilters(userListFilters); + return this; + } + + @Override + public MangaUserListingSearch setUsername(String username) { + super.setUsername(username); + return this; + } + + @Override + protected StringBuilder createURL() { + StringBuilder stringBuilder = super.createURL(); + if (magazine != 0) + stringBuilder.append("&magazine=").append(magazine); + return stringBuilder; + } + + protected CompletableFuture getList() { + return retrieve(MangaList.class, baseURL + "/user/" + username + this.createURL()); + } } diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/UserListingSearch.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/UserListingSearch.java index 28cca24..429dcd0 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/UserListingSearch.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/core/userListing/UserListingSearch.java @@ -1,19 +1,16 @@ package com.github.Doomsdayrs.Jikan4java.core.userListing; +import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.github.Doomsdayrs.Jikan4java.core.Retriever; import com.github.Doomsdayrs.Jikan4java.enums.SortBy; -import com.github.Doomsdayrs.Jikan4java.enums.status.Stati; -import com.github.Doomsdayrs.Jikan4java.enums.user.userListings.filters.UserListFilters; -import com.github.Doomsdayrs.Jikan4java.enums.user.userListings.orderBy.ListOrderBy; -import com.github.Doomsdayrs.Jikan4java.types.Main.User.Listing.AnimeList.AnimeList; -import com.github.Doomsdayrs.Jikan4java.types.Main.User.Listing.MangaList.MangaList; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.filters.UserListFilters; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.orderBy.ListOrderBy; +import com.github.Doomsdayrs.Jikan4java.enums.userListings.status.ListingStati; import okhttp3.OkHttpClient; import okhttp3.Request; import org.json.simple.parser.JSONParser; -import java.util.concurrent.CompletableFuture; - /** * This file is part of Jikan4java. * Jikan4java is free software: you can redistribute it and/or modify @@ -32,75 +29,92 @@ * * @author github.com/doomsdayrs */ -public class UserListingSearch extends Retriever { - private String username; +class UserListingSearch extends Retriever { + protected String username; + protected String query = null; + protected int page = 0; + protected ListOrderBy orderBy = null; + private UserListFilters userListFilters = null; + private SortBy sortBy = null; + private ListOrderBy orderBy2 = null; + private ListingStati listingStati = null; - public UserListingSearch(String username) { + UserListingSearch(String username) { + super(new ObjectMapper().configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true)); this.username = username; } - public UserListingSearch(OkHttpClient client, String username) { + UserListingSearch(OkHttpClient client, String username) { super(client); this.username = username; } - public UserListingSearch(ObjectMapper objectMapper, String username) { + UserListingSearch(ObjectMapper objectMapper, String username) { super(objectMapper); this.username = username; } - public UserListingSearch(JSONParser jsonParser, String username) { + UserListingSearch(JSONParser jsonParser, String username) { super(jsonParser); this.username = username; } - public UserListingSearch(Request.Builder builder, String username) { + UserListingSearch(Request.Builder builder, String username) { super(builder); this.username = username; } - - - protected UserListFilters userListFilters = null; - - protected String query = null; - protected int page = 0; - protected SortBy sortBy = null; - - protected ListOrderBy orderBy = null; - protected ListOrderBy orderBy2 = null; - protected int[] from = null; protected int[] to = null; - protected Stati stati = null; - //AnimeValues - - - public UserListingSearch setQuery(String query) { + public UserListingSearch setQuery(String query) { this.query = query; return this; } - public UserListingSearch setPage(int page) { + public UserListingSearch setPage(int page) { this.page = page; return this; } - public UserListingSearch setSortBy(SortBy sortBy) { + public UserListingSearch setSortBy(SortBy sortBy) { this.sortBy = sortBy; return this; } - public UserListingSearch setOrderBy(ListOrderBy orderBy) { + public UserListingSearch setOrderBy(ListOrderBy orderBy) { this.orderBy = orderBy; return this; } - public UserListingSearch setOrderBy2(ListOrderBy orderBy2) { + public UserListingSearch setOrderBy2(ListOrderBy orderBy2) { this.orderBy2 = orderBy2; return this; } + public UserListingSearch setFrom(int yyyy, int mm, int dd) { + this.from = new int[]{yyyy, mm, dd}; + return this; + } + + public UserListingSearch setTo(int yyyy, int mm, int dd) { + this.to = new int[]{yyyy, mm, dd}; + return this; + } + + public UserListingSearch setFrom(int[] from) { + this.from = from; + return this; + } + + public UserListingSearch setTo(int[] to) { + this.to = to; + return this; + } + + UserListingSearch setListingStati(ListingStati listingStati) { + this.listingStati = listingStati; + return this; + } /** * This must be set, or will return null on getList @@ -108,36 +122,19 @@ public UserListingSearch setOrderBy2(ListOrderBy orderBy2) { * @param userListFilters The type of list you wish, and what filtering. Default with all * @return this */ - public UserListingSearch setUserListFilters(UserListFilters userListFilters) { + public UserListingSearch setUserListFilters(UserListFilters userListFilters) { this.userListFilters = userListFilters; return this; } - public UserListingSearch setUsername(String username) { + public UserListingSearch setUsername(String username) { this.username = username; return this; } - public CompletableFuture getAnimeList() { - if (userListFilters.getaClass().equals(AnimeList.class)) - return getList(); - else return null; - } - public CompletableFuture getMangaList() { - if (userListFilters.getaClass().equals(MangaList.class)) - return getList(); - return null; - } - - - /** - * Gets an Anime/Manga list from user - * - * @return CompletableFuture - */ - private CompletableFuture getList() { + protected StringBuilder createURL() { StringBuilder options = new StringBuilder(); if (userListFilters != null) @@ -160,9 +157,6 @@ private CompletableFuture getList() { if (ordering) if (sortBy != null) options.append("&sort=").append(sortBy); - - - return retrieve(userListFilters.getaClass(), baseURL + "/user/" + username + options); + return options; } -} - +} \ No newline at end of file diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/AnimeListFilters.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/AnimeListFilters.java similarity index 95% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/AnimeListFilters.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/AnimeListFilters.java index 28d87d3..29f3541 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/AnimeListFilters.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/AnimeListFilters.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user.userListings.filters; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.filters; import com.github.Doomsdayrs.Jikan4java.types.Main.User.Listing.AnimeList.AnimeList; diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/MangaListFilters.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/MangaListFilters.java similarity index 95% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/MangaListFilters.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/MangaListFilters.java index 7999b36..ebac4a6 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/MangaListFilters.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/MangaListFilters.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user.userListings.filters; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.filters; import com.github.Doomsdayrs.Jikan4java.types.Main.User.Listing.MangaList.MangaList; diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/UserListFilters.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/UserListFilters.java similarity index 84% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/UserListFilters.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/UserListFilters.java index a2adb81..159f14d 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/filters/UserListFilters.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/filters/UserListFilters.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user.userListings.filters; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.filters; /** * This file is part of Jikan4java. @@ -19,10 +19,10 @@ * @author github.com/doomsdayrs */ public interface UserListFilters { - public String getForm(); + String getForm(); - public Class getaClass(); + Class getaClass(); @Override - public String toString(); + String toString(); } diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/AnimeListOrderBy.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/AnimeListOrderBy.java similarity index 73% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/AnimeListOrderBy.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/AnimeListOrderBy.java index cf1fd6b..6f67957 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/AnimeListOrderBy.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/AnimeListOrderBy.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user.userListings.orderBy; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.orderBy; /** * This file is part of Jikan4java. @@ -20,14 +20,21 @@ */ public enum AnimeListOrderBy implements ListOrderBy { TITLE("title"), + FINISH_DATE("finish_date"), START_DATE("start_date"), - END_DATE("end_date"), SCORE("score"), + LAST_UPDATED("last_updated"), TYPE("type"), - MEMBERS("members"), - ID("id"), - EPISODES("episodes"), - RATING("rating"); + RATED("rated"), + REWATCH("rewatch"), + REWATCHED_VALUE(REWATCH.type), + PRIORITY("priority"), + PROGRESS("progress"), + EPISODES_WATCHED(PROGRESS.type), + STORAGE("storage"), + AIR_START("air_start"), + AIR_END("air_end"), + STATUS("status"); private final String type; diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/ListOrderBy.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/ListOrderBy.java similarity index 91% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/ListOrderBy.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/ListOrderBy.java index 28500c4..8011478 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/ListOrderBy.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/ListOrderBy.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user.userListings.orderBy; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.orderBy; /** * This file is part of Jikan4java. diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/MangaListOrderBy.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/MangaListOrderBy.java similarity index 77% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/MangaListOrderBy.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/MangaListOrderBy.java index 9c0811b..8f62952 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/userListings/orderBy/MangaListOrderBy.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/orderBy/MangaListOrderBy.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user.userListings.orderBy; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.orderBy; /** * This file is part of Jikan4java. @@ -20,14 +20,18 @@ */ public enum MangaListOrderBy { TITLE("title"), + FINISH_DATE("finish_date"), START_DATE("start_date"), - END_DATE("end_date"), SCORE("score"), + LAST_UPDATED("last_updated"), TYPE("type"), - MEMBERS("members"), - ID("id"), - CHAPTERS("chapters"), - VOLUMES("volumes"); + PRIORITY("priority"), + PROGRESS("progress"), + CHAPTERS_READ(PROGRESS.type), + VOLUMES_READ("volumes_read"), + AIR_START("air_start"), + AIR_END("air_end"), + STATUS("status"); private final String type; diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/AnimeListingStati.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/AnimeListingStati.java new file mode 100644 index 0000000..099ccff --- /dev/null +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/AnimeListingStati.java @@ -0,0 +1,40 @@ +package com.github.Doomsdayrs.Jikan4java.enums.userListings.status; + +/** + * This file is part of Jikan4java. + * Jikan4java is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * Foobar is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * You should have received a copy of the GNU General Public License + * along with Jikan4java. If not, see https://www.gnu.org/licenses/. + * ==================================================================== + * Jikan4java + * 25 / 05 / 2019 + * + * @author github.com/doomsdayrs + */ +public enum AnimeListingStati implements ListingStati { + AIRING("airing"), + FINISHED("finished"), + COMPLETE(FINISHED.type), + TO_BE_AIRED("to_be_aired"), + NOT_YET_AIRED(TO_BE_AIRED.type), + TBA(NOT_YET_AIRED.type), + NYA(TBA.type); + + private final String type; + + AnimeListingStati(String type) { + this.type = type; + } + + @Override + public String toString() { + return type; + } +} diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/a.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/ListingStati.java similarity index 87% rename from src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/a.java rename to src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/ListingStati.java index 668d539..98441ae 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/user/a.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/ListingStati.java @@ -1,4 +1,4 @@ -package com.github.Doomsdayrs.Jikan4java.enums.user; +package com.github.Doomsdayrs.Jikan4java.enums.userListings.status; /** * This file is part of Jikan4java. @@ -14,9 +14,9 @@ * along with Jikan4java. If not, see https://www.gnu.org/licenses/. * ==================================================================== * Jikan4java - * 18 / 05 / 2019 + * 25 / 05 / 2019 * * @author github.com/doomsdayrs */ -public class a { +public interface ListingStati { } diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/MangaListingStati.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/MangaListingStati.java new file mode 100644 index 0000000..66b4c88 --- /dev/null +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/enums/userListings/status/MangaListingStati.java @@ -0,0 +1,39 @@ +package com.github.Doomsdayrs.Jikan4java.enums.userListings.status; + +/** + * This file is part of Jikan4java. + * Jikan4java is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * Foobar is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * You should have received a copy of the GNU General Public License + * along with Jikan4java. If not, see https://www.gnu.org/licenses/. + * ==================================================================== + * Jikan4java + * 25 / 05 / 2019 + * + * @author github.com/doomsdayrs + */ +public enum MangaListingStati implements ListingStati { + PUBLISHING("publishing"), + FINISHED("finished"), + COMPLETE(FINISHED.type), + TO_BE_PUBLISHED("to_be_published"), + NOT_YET_PUBLISHED(TO_BE_PUBLISHED.type), + TBP(NOT_YET_PUBLISHED.type), + NYP(TBP.type); + private final String type; + + MangaListingStati(String type) { + this.type = type; + } + + @Override + public String toString() { + return type; + } +} diff --git a/src/main/java/com/github/Doomsdayrs/Jikan4java/types/Main/User/User.java b/src/main/java/com/github/Doomsdayrs/Jikan4java/types/Main/User/User.java index a68010b..992ca36 100644 --- a/src/main/java/com/github/Doomsdayrs/Jikan4java/types/Main/User/User.java +++ b/src/main/java/com/github/Doomsdayrs/Jikan4java/types/Main/User/User.java @@ -2,7 +2,8 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.github.Doomsdayrs.Jikan4java.core.Retriever; -import com.github.Doomsdayrs.Jikan4java.core.userListing.UserListingSearch; +import com.github.Doomsdayrs.Jikan4java.core.userListing.AnimeUserListingSearch; +import com.github.Doomsdayrs.Jikan4java.core.userListing.MangaUserListingSearch; import com.github.Doomsdayrs.Jikan4java.types.Main.User.Friends.Friends; import com.github.Doomsdayrs.Jikan4java.types.Main.User.History.HistoryPage; @@ -81,8 +82,12 @@ public CompletableFuture getFriends(int page) { return retrieve(Friends.class, baseURL + "/user/" + username + "/friends/" + page); } - public UserListingSearch getListingSearch() { - return new UserListingSearch(username); + public AnimeUserListingSearch getAnimeListSearch() { + return new AnimeUserListingSearch(username); + } + + public MangaUserListingSearch getMangaListSearch() { + return new MangaUserListingSearch(username); } @Override