aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/vtuber/ScheduleHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/vtuber/ScheduleHandler.java')
-rw-r--r--src/main/java/vtuber/ScheduleHandler.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/main/java/vtuber/ScheduleHandler.java b/src/main/java/vtuber/ScheduleHandler.java
new file mode 100644
index 0000000..094309b
--- /dev/null
+++ b/src/main/java/vtuber/ScheduleHandler.java
@@ -0,0 +1,65 @@
+package vtuber;
+
+import com.pina.Holodex;
+import com.pina.HolodexException;
+import com.pina.datatypes.SimpleVideo;
+import com.pina.query.VideoQueryBuilder;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ScheduleHandler {
+ Holodex holodex;
+
+ public ScheduleHandler(String apikey) {
+ System.out.println("ScheduleHandler initialized");
+ holodex = new Holodex(apikey);
+
+ }
+
+ public List<SimpleVideo> getSchedule(String org, int limit) {
+ System.out.println("Getting schedule for " + org);
+ List<SimpleVideo> upcomingAndLiveVideos = new ArrayList<>();
+ try {
+ List<SimpleVideo> upcomingVideos = holodex.getLiveAndUpcomingVideos(new VideoQueryBuilder().setOrg(org).setLimit(limit).setStatus("upcoming"));
+ List<SimpleVideo> liveVideos = holodex.getLiveAndUpcomingVideos(new VideoQueryBuilder().setStatus("live").setOrg(org).setLimit(limit));
+ upcomingAndLiveVideos.addAll(liveVideos);
+ upcomingAndLiveVideos.addAll(upcomingVideos);
+ } catch (HolodexException e) {
+ System.out.println("Error getting schedule for " + org);
+ System.out.println(e.getMessage());
+ }
+ return upcomingAndLiveVideos;
+ }
+
+ public List<SimpleVideo> getSchedule(String org) {
+ System.out.println("Getting schedule for " + org);
+ List<SimpleVideo> upcomingAndLiveVideos = new ArrayList<>();
+ try {
+ List<SimpleVideo> upcomingVideos = holodex.getLiveAndUpcomingVideos(new VideoQueryBuilder().setOrg(org).setStatus("upcoming"));
+ List<SimpleVideo> liveVideos = holodex.getLiveAndUpcomingVideos(new VideoQueryBuilder().setStatus("live").setOrg(org));
+ upcomingAndLiveVideos.addAll(liveVideos);
+ upcomingAndLiveVideos.addAll(upcomingVideos);
+ } catch (HolodexException e) {
+ System.out.println("Error getting schedule for " + org);
+ System.out.println(e.getMessage());
+ }
+ return upcomingAndLiveVideos;
+ }
+
+ public List<SimpleVideo> getScheduleChannelId(String channelId) {
+ System.out.println("Getting schedule for " + channelId);
+ List<SimpleVideo> upcomingAndLiveVideos = new ArrayList<>();
+ try {
+ List<SimpleVideo> upcomingVideos = holodex.getLiveAndUpcomingVideos(new VideoQueryBuilder().setChannelId(channelId).setStatus("upcoming"));
+ List<SimpleVideo> liveVideos = holodex.getLiveAndUpcomingVideos(new VideoQueryBuilder().setStatus("live").setChannelId(channelId));
+ upcomingAndLiveVideos.addAll(liveVideos);
+ upcomingAndLiveVideos.addAll(upcomingVideos);
+ } catch (HolodexException e) {
+ System.out.println("Error getting schedule for " + channelId);
+ System.out.println(e.getMessage());
+ }
+ return upcomingAndLiveVideos;
+
+ }
+}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage