diff --git a/src/main/java/dev/ptnr/AyayaBot.java b/src/main/java/dev/ptnr/AyayaBot.java index 61512be..f1ad2f8 100644 --- a/src/main/java/dev/ptnr/AyayaBot.java +++ b/src/main/java/dev/ptnr/AyayaBot.java @@ -79,9 +79,12 @@ class BotListener extends ListenerAdapter { } EmbedBuilder eb = new EmbedBuilder(); - eb.setTitle(hitomiData.getTitle()).setUrl("https://hitomi.la/reader/"+id+".html"); + eb.setTitle(hitomiData.getTitle()).setUrl("https://hitomi.la/reader/"+hitomiData.getId()+".html"); eb.appendDescription("품번: `" + hitomiData.getId() + "`\n"); eb.appendDescription("작가: `" + hitomiData.getArtistsAsString() + "`\n"); + eb.appendDescription("그룹: `" + hitomiData.getGroupsAsString() + "`\n"); + eb.appendDescription("캐릭터: `" + hitomiData.getCharactersAsString() + "`\n"); + eb.appendDescription("시리즈: `" + hitomiData.getParodysAsString() + "`\n"); eb.appendDescription("종류: `" + hitomiData.getType() + "`\n"); eb.appendDescription("태그: `" + hitomiData.getTagsAsString() + "`"); diff --git a/src/main/java/dev/ptnr/Hitomi.java b/src/main/java/dev/ptnr/Hitomi.java index 5e1baa3..610f4fa 100644 --- a/src/main/java/dev/ptnr/Hitomi.java +++ b/src/main/java/dev/ptnr/Hitomi.java @@ -20,6 +20,9 @@ public class Hitomi { JsonNode rootNode; ArrayList imageHashList = new ArrayList<>(); ArrayList artists = new ArrayList<>(); + ArrayList groups = new ArrayList<>(); + ArrayList characters = new ArrayList<>(); + ArrayList parodys = new ArrayList<>(); ArrayList femaleTag = new ArrayList<>(); ArrayList maleTag = new ArrayList<>(); ArrayList normalTag = new ArrayList<>(); @@ -73,9 +76,30 @@ public class Hitomi { artists.add(artist); } + for (JsonNode node : rootNode.get("groups")) { + String group = node.get("group").asText(); + + groups.add(group); + } + + for (JsonNode node : rootNode.get("characters")) { + String character = node.get("character").asText(); + + characters.add(character); + } + + for (JsonNode node : rootNode.get("parodys")) { + String parody = node.get("parody").asText(); + + parodys.add(parody); + } + HitomiDTO galleryData = new HitomiDTO(rootNode.get("title").asText(), galleryId, artists, + groups, + characters, + parodys, rootNode.get("type").asText(), rootNode.get("language").asText(), imageHashList, @@ -149,8 +173,11 @@ public class Hitomi { } public static void main(String[] args) { - HitomiDTO test = GetHitomiData(2154225); + HitomiDTO test = GetHitomiData(2997822); System.out.println(test.getTagsAsString()); System.out.println(test.getArtistsAsString()); + System.out.println(test.getGroupsAsString()); + System.out.println(test.getCharactersAsString()); + System.out.println(test.getParodysAsString()); } } diff --git a/src/main/java/dev/ptnr/HitomiDTO.java b/src/main/java/dev/ptnr/HitomiDTO.java index 7f5880c..82e2463 100644 --- a/src/main/java/dev/ptnr/HitomiDTO.java +++ b/src/main/java/dev/ptnr/HitomiDTO.java @@ -10,14 +10,29 @@ public class HitomiDTO { private String type; private String language; private ArrayList imageHashList; + private ArrayList groups; + private ArrayList characters; + private ArrayList parodys; private Map> tags; public HitomiDTO() {} - public HitomiDTO(String title, int id, ArrayList artists, String type, String language, ArrayList imageHashList, Map> tags) { + public HitomiDTO(String title, + int id, + ArrayList artists, + ArrayList groups, + ArrayList characters, + ArrayList parodys, + String type, + String language, + ArrayList imageHashList, + Map> tags) { this.title = title; this.id = id; this.artists = artists; + this.groups = groups; + this.characters = characters; + this.parodys = parodys; this.type = type; this.language = language; this.imageHashList = imageHashList; @@ -41,7 +56,7 @@ public class HitomiDTO { return tags.substring(0, tags.length() - 2); } - public String getArtistsAsString() { + public String getArtistsAsString() { // Penciller String artists = ""; if (this.artists.isEmpty()) return "N/A"; if (this.artists.size() == 1) return this.artists.get(0); @@ -49,6 +64,33 @@ public class HitomiDTO { for (String artist : this.artists) artists += artist + ", "; return artists.substring(0, artists.length() - 2); } + + public String getGroupsAsString() { // Writer + String groups = ""; + if (this.groups.isEmpty()) return "N/A"; + if (this.groups.size() == 1) return this.groups.get(0); + + for (String group : this.groups) groups += group + ", "; + return groups.substring(0, groups.length() - 2); + } + + public String getCharactersAsString() { // Characters + String characters = ""; + if (this.characters.isEmpty()) return "N/A"; + if (this.characters.size() == 1) return this.characters.get(0); + + for (String character : this.characters) characters += character + ", "; + return characters.substring(0, characters.length() - 2); + } + + public String getParodysAsString() { // Series + String parodys = ""; + if (this.parodys.isEmpty()) return "N/A"; + if (this.parodys.size() == 1) return this.parodys.get(0); + + for (String parody : this.parodys) parodys += parody + ", "; + return parodys.substring(0, parodys.length() - 2); + } public String getTitle() { return title; @@ -73,6 +115,30 @@ public class HitomiDTO { public void setArtists(ArrayList artists) { this.artists = artists; } + + public ArrayList getGroups() { + return groups; + } + + public void setGroups(ArrayList groups) { + this.groups = groups; + } + + public ArrayList getCharacters() { + return characters; + } + + public void setCharacters(ArrayList characters) { + this.characters = characters; + } + + public ArrayList getParodys() { + return parodys; + } + + public void setParodys(ArrayList parodys) { + this.parodys = parodys; + } public String getType() { return type;