package files; import org.jsoup.Jsoup; import org.jsoup.nodes.Element; import java.io.IOException; public class Anime { private final String name; private String description; private final String[] genres; private final String year; private final String series; private final String rating; public final String image; private final String url; private static Anime[] list; private static byte indexOfAnime = 0; private static String searchedAnime; private static byte searchedAnimeSize; private static boolean isSearchingAnAnime; public Anime(String name, String description, String[] genres, String year, String series, String rating, String image, String url) { this.name = name; this.description = description; this.genres = genres; this.year = year; this.series = series; this.rating = rating; this.image = image; this.url = url; } public String getDescription() throws IOException { if (this.description == null) { parseDescription(); } return description; } public void parseDescription() throws IOException { Element descriptionTemp = Parser.getPage(this.url).select("div[class=fdesc clr full-text clearfix]").first(); this.description = Jsoup.parse(String.valueOf(descriptionTemp)).text(); } public String showInfo() { return "Имя: " + this.name + System.lineSeparator() + "Серий: " + this.series + System.lineSeparator() + "Рейтинг: " + this.rating; } public String getImage() { return image; } public String getUrl() { return url; } public static byte getIndexOfAnime() { return indexOfAnime; } public static void setIndexOfAnime(byte indexOfAnime) { Anime.indexOfAnime = indexOfAnime; } public static void decreaseIndexOfAnime() { indexOfAnime--; } public static void increaseIndexOfAnime() { indexOfAnime++; } public static String getSearchedAnime() { return searchedAnime; } public static void setSearchedAnime(String searchedAnime) { Anime.searchedAnime = searchedAnime.replace(' ', '+'); } public static boolean getIsSearchingAnAnime() { return isSearchingAnAnime; } public static void setIsSearchingAnAnime(boolean isSearchingAnAnime) { Anime.isSearchingAnAnime = isSearchingAnAnime; } public static void setSearchedAnimeSize(byte searchedAnimeSize) { Anime.searchedAnimeSize = searchedAnimeSize; } public static byte getSearchedAnimeSize() { return Anime.searchedAnimeSize; } public static Anime[] getList() { return list; } public static void setList(Anime[] list) { Anime.list = list; } }