diff options
| -rw-r--r-- | .idea/encodings.xml | 7 | ||||
| -rw-r--r-- | src/main/java/App.java | 43 | ||||
| -rw-r--r-- | src/main/java/com/pina/query/ChannelQueryBuilder.java | 21 | ||||
| -rw-r--r-- | src/main/java/com/pina/query/VideoQueryBuilder.java | 10 |
4 files changed, 48 insertions, 33 deletions
diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Encoding"> + <file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" /> + <file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" /> + </component> +</project>
\ No newline at end of file diff --git a/src/main/java/App.java b/src/main/java/App.java index 6a5fc48..05f4856 100644 --- a/src/main/java/App.java +++ b/src/main/java/App.java @@ -4,6 +4,7 @@ import com.pina.datatypes.Channel; import com.pina.datatypes.Video; import com.pina.query.ChannelQueryBuilder; import com.pina.query.LiveVideoQueryBuilder; +import com.pina.query.VideoQueryBuilder; import java.util.List; @@ -11,35 +12,31 @@ public class App { public static void main( String[] args ) { - Holodex holodex = new Holodex("b33eda39-dfb0-4337-9c8a-49cd8e69f5d5"); try { - ChannelQueryBuilder query = new ChannelQueryBuilder(); - query.setOrg("Hololive"); - List<Channel> channels = holodex.getChannels(query); - System.out.println("The Members of Hololive are:"); - for (Channel channel : channels) { - System.out.println(channel.name + " (" + channel.id + ")"); - } - System.out.println("\n"); - Channel channel = holodex.getChannel("UC1DCedRgGHBdm81E1llLhOQ"); - System.out.println(channel.name+"'s English name is " + channel.english_name); - System.out.println(channel.name+" is a "+channel.type); + Holodex holodex = new Holodex("b33eda39-dfb0-4337-9c8a-49cd8e69f5d5"); + Channel channel = holodex.getChannel("UC4WvIIAo89_AzGUh1AZ6Dkg"); + System.out.println(channel.name + " is a member of " + channel.org + " and has " + channel.suborg + " as a suborg"); - LiveVideoQueryBuilder liveQuery = new LiveVideoQueryBuilder(); - liveQuery.setChannelId("UCkngxfPbmGyGl_RIq4FA3MQ"); - liveQuery.setStatus("upcoming"); - List<Video> chigusaUpcoming = holodex.getVideos(liveQuery); - System.out.println("\n"); - System.out.println("Chigusa's upcoming streams are:"); - for (Video video : chigusaUpcoming) { - System.out.println(video.title + " (" + video.id + ")"); + LiveVideoQueryBuilder liveVideoQuery = new LiveVideoQueryBuilder().setStatus("live").setOrg("Hololive"); + List<Video> currentlyLiveVideos = holodex.getLiveVideos(liveVideoQuery); + System.out.println("Currently there are " + currentlyLiveVideos.size() + " livestreams on going in Hololive"); + for (Video video : currentlyLiveVideos) { + System.out.println(video.channel.name + " is currently live with " + video.live_viewers + " views"); } + ChannelQueryBuilder channelQuery = new ChannelQueryBuilder(); + channelQuery.setOrg("Nijisanji"); + channelQuery.setLimit(75); + List<Channel> nijisanjiMembers = holodex.getChannels(channelQuery); + VideoQueryBuilder vidoeQuery = new VideoQueryBuilder(); + vidoeQuery.setVideoId("9-O_IWM3184"); + Video anotherVideo = holodex.getVideo(new VideoQueryBuilder().setVideoId("9-O_IWM3184").setLang("en")); + System.out.println(anotherVideo.channel.name + " uploaded a video titled " + anotherVideo.title + " on " + anotherVideo.published_at); - } catch (HolodexException e) { - System.err.println("Failed to get live streams: " + e.getMessage()); } - System.exit(0); + catch (HolodexException e) { + e.printStackTrace(); + } } } diff --git a/src/main/java/com/pina/query/ChannelQueryBuilder.java b/src/main/java/com/pina/query/ChannelQueryBuilder.java index 490a5c9..13fd387 100644 --- a/src/main/java/com/pina/query/ChannelQueryBuilder.java +++ b/src/main/java/com/pina/query/ChannelQueryBuilder.java @@ -13,56 +13,63 @@ public class ChannelQueryBuilder { return limit; } - public void setLimit(Integer limit) { + public ChannelQueryBuilder setLimit(Integer limit) { this.limit = limit; + return this; } public Integer getOffset() { return offset; } - public void setOffset(Integer offset) { + public ChannelQueryBuilder setOffset(Integer offset) { this.offset = offset; + return this; } public String getType() { return type; } - public void setType(String type) { + public ChannelQueryBuilder setType(String type) { this.type = type; + return this; } public String getLang() { return lang; } - public void setLang(String lang) { + public ChannelQueryBuilder setLang(String lang) { this.lang = lang; + return this; } public String getOrder() { return order; } - public void setOrder(String order) { + public ChannelQueryBuilder setOrder(String order) { this.order = order; + return this; } public String getOrg() { return org; } - public void setOrg(String org) { + public ChannelQueryBuilder setOrg(String org) { this.org = org; + return this; } public String getSort() { return sort; } - public void setSort(String sort) { + public ChannelQueryBuilder setSort(String sort) { this.sort = sort; + return this; } diff --git a/src/main/java/com/pina/query/VideoQueryBuilder.java b/src/main/java/com/pina/query/VideoQueryBuilder.java index 76d01db..bd6d1b0 100644 --- a/src/main/java/com/pina/query/VideoQueryBuilder.java +++ b/src/main/java/com/pina/query/VideoQueryBuilder.java @@ -1,5 +1,6 @@ package com.pina.query; + public class VideoQueryBuilder { private String videoId; private String lang; @@ -9,24 +10,27 @@ public class VideoQueryBuilder { return videoId; } - public void setVideoId(String videoId) { + public VideoQueryBuilder setVideoId(String videoId) { this.videoId = videoId; + return this; } public String getLang() { return lang; } - public void setLang(String lang) { + public VideoQueryBuilder setLang(String lang) { this.lang = lang; + return this; } public String getC() { return c; } - public void setC(String c) { + public VideoQueryBuilder setC(String c) { this.c = c; + return this; } |
