diff options
| author | Pinapelz <donaldshan1@outlook.com> | 2023-04-05 12:40:46 -0700 |
|---|---|---|
| committer | Pinapelz <donaldshan1@outlook.com> | 2023-04-05 12:40:46 -0700 |
| commit | c58b6bc58f23562fb50472324dfd5be834772f59 (patch) | |
| tree | df5b0ca3d396621e763618ae6a4d83e415e12a0c /src | |
| parent | a934fb9c343df39dd9d0a5e6f8f6b31725973a89 (diff) | |
Updated javadoc for Builder functions
Diffstat (limited to 'src')
| -rw-r--r-- | src/main/java/App.java | 8 | ||||
| -rw-r--r-- | src/main/java/com/pina/Holodex.java | 11 | ||||
| -rw-r--r-- | src/main/java/com/pina/query/ChannelQueryBuilder.java | 3 | ||||
| -rw-r--r-- | src/main/java/com/pina/query/VideoMetadataQueryBuilder.java | 40 | ||||
| -rw-r--r-- | src/main/java/com/pina/query/VideoQueryBuilder.java | 149 | ||||
| -rw-r--r-- | src/main/java/com/pina/query/VideosByChannelIDQueryBuilder.java | 3 |
6 files changed, 189 insertions, 25 deletions
diff --git a/src/main/java/App.java b/src/main/java/App.java index 77c3a1e..f526bd2 100644 --- a/src/main/java/App.java +++ b/src/main/java/App.java @@ -3,8 +3,8 @@ import com.pina.HolodexException; 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 com.pina.query.VideoMetadataQueryBuilder; import java.util.List; @@ -17,7 +17,7 @@ public class App 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 liveVideoQuery = new LiveVideoQueryBuilder().setStatus("live").setOrg("Hololive"); + VideoQueryBuilder liveVideoQuery = new VideoQueryBuilder().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) { @@ -30,9 +30,9 @@ public class App List<Channel> nijisanjiMembers = holodex.getChannels(channelQuery); // Gets the first 75 members of Nijisanji - VideoQueryBuilder vidoeQuery = new VideoQueryBuilder(); + VideoMetadataQueryBuilder vidoeQuery = new VideoMetadataQueryBuilder(); vidoeQuery.setVideoId("9-O_IWM3184"); - Video anotherVideo = holodex.getVideo(new VideoQueryBuilder().setVideoId("9-O_IWM3184").setLang("en")); + Video anotherVideo = holodex.getVideo(new VideoMetadataQueryBuilder().setVideoId("9-O_IWM3184").setLang("en")); System.out.println(anotherVideo.channel.name + " uploaded a video titled " + anotherVideo.title + " on " + anotherVideo.published_at); } diff --git a/src/main/java/com/pina/Holodex.java b/src/main/java/com/pina/Holodex.java index 830b01f..58a11c0 100644 --- a/src/main/java/com/pina/Holodex.java +++ b/src/main/java/com/pina/Holodex.java @@ -3,8 +3,8 @@ package com.pina; 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 com.pina.query.VideoMetadataQueryBuilder; import com.pina.query.VideosByChannelIDQueryBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; @@ -46,10 +46,7 @@ public class Holodex { service = retrofit.create(HolodexService.class); } - - - - public List<Video> getLiveVideos(LiveVideoQueryBuilder queryBuilder) throws HolodexException { + public List<Video> getLiveVideos(VideoQueryBuilder queryBuilder) throws HolodexException { Call<List<Video>> call = service.getLiveVideos(queryBuilder.getChannelId(), queryBuilder.getId(), queryBuilder.getInclude(), queryBuilder.getLang(), queryBuilder.getLimit(), queryBuilder.getMaxUpcomingHours(), @@ -61,7 +58,7 @@ public class Holodex { return executeCall(call); } - public List<Video> getVideos(LiveVideoQueryBuilder queryBuilder) throws HolodexException { + public List<Video> getVideos(VideoQueryBuilder queryBuilder) throws HolodexException { Call<List<Video>> call = service.getVideos(queryBuilder.getChannelId(), queryBuilder.getId(), queryBuilder.getInclude(), queryBuilder.getLang(), queryBuilder.getLimit(), queryBuilder.getMaxUpcomingHours(), @@ -91,7 +88,7 @@ public class Holodex { return executeCall(call); } - public Video getVideo(VideoQueryBuilder query) throws HolodexException { + public Video getVideo(VideoMetadataQueryBuilder query) throws HolodexException { Call<Video> call = service.getVideo(query.getVideoId(), query.getLang(), query.getC()); return executeCall(call); } diff --git a/src/main/java/com/pina/query/ChannelQueryBuilder.java b/src/main/java/com/pina/query/ChannelQueryBuilder.java index 13fd387..1c51d68 100644 --- a/src/main/java/com/pina/query/ChannelQueryBuilder.java +++ b/src/main/java/com/pina/query/ChannelQueryBuilder.java @@ -1,6 +1,9 @@ package com.pina.query; public class ChannelQueryBuilder { + /*** + * Used to get a set of channels matching the given parameters + */ private Integer limit; private Integer offset; private String type; diff --git a/src/main/java/com/pina/query/VideoMetadataQueryBuilder.java b/src/main/java/com/pina/query/VideoMetadataQueryBuilder.java new file mode 100644 index 0000000..bccad79 --- /dev/null +++ b/src/main/java/com/pina/query/VideoMetadataQueryBuilder.java @@ -0,0 +1,40 @@ +package com.pina.query; + + +public class VideoMetadataQueryBuilder { + /*** + * Used to get the metadata of a single video when given the video ID + */ + private String videoId; + private String lang; + private String c; + + public String getVideoId() { + return videoId; + } + + public VideoMetadataQueryBuilder setVideoId(String videoId) { + this.videoId = videoId; + return this; + } + + public String getLang() { + return lang; + } + + public VideoMetadataQueryBuilder setLang(String lang) { + this.lang = lang; + return this; + } + + public String getC() { + return c; + } + + public VideoMetadataQueryBuilder setC(String c) { + this.c = c; + return this; + } + + +} diff --git a/src/main/java/com/pina/query/VideoQueryBuilder.java b/src/main/java/com/pina/query/VideoQueryBuilder.java index bd6d1b0..67acd1b 100644 --- a/src/main/java/com/pina/query/VideoQueryBuilder.java +++ b/src/main/java/com/pina/query/VideoQueryBuilder.java @@ -1,22 +1,39 @@ package com.pina.query; - public class VideoQueryBuilder { - private String videoId; + /*** + * Query parameters for /api/v2/live and /api/v2/videos + * Query Live and Upcoming Videos + */ + private String channelId; + private String id; + private String include; private String lang; - private String c; + private Integer limit; + private Integer maxUpcomingHours; + private String mentionedChannelId; + private Integer offset; + private String order; + private String org; + private String paginated; + private String sort; + private String status; + private String topic; + private String type; - public String getVideoId() { - return videoId; + public VideoQueryBuilder setChannelId(String channelId) { + this.channelId = channelId; + return this; } - public VideoQueryBuilder setVideoId(String videoId) { - this.videoId = videoId; + public VideoQueryBuilder setId(String id) { + this.id = id; return this; } - public String getLang() { - return lang; + public VideoQueryBuilder setInclude(String include) { + this.include = include; + return this; } public VideoQueryBuilder setLang(String lang) { @@ -24,14 +41,118 @@ public class VideoQueryBuilder { return this; } - public String getC() { - return c; + public VideoQueryBuilder setLimit(Integer limit) { + this.limit = limit; + return this; + } + + public VideoQueryBuilder setMaxUpcomingHours(Integer maxUpcomingHours) { + this.maxUpcomingHours = maxUpcomingHours; + return this; + } + + public VideoQueryBuilder setMentionedChannelId(String mentionedChannelId) { + this.mentionedChannelId = mentionedChannelId; + return this; + } + + public VideoQueryBuilder setOffset(Integer offset) { + this.offset = offset; + return this; + } + + public VideoQueryBuilder setOrder(String order) { + this.order = order; + return this; + } + + public VideoQueryBuilder setOrg(String org) { + this.org = org; + return this; + } + + public VideoQueryBuilder setPaginated(String paginated) { + this.paginated = paginated; + return this; + } + + public VideoQueryBuilder setSort(String sort) { + this.sort = sort; + return this; + } + + public VideoQueryBuilder setStatus(String status) { + this.status = status; + return this; } - public VideoQueryBuilder setC(String c) { - this.c = c; + public VideoQueryBuilder setTopic(String topic) { + this.topic = topic; return this; } + public VideoQueryBuilder setType(String type) { + this.type = type; + return this; + } -} + public String getChannelId() { + return channelId; + } + + public String getId() { + return id; + } + + public String getInclude() { + return include; + } + + public String getLang() { + return lang; + } + + public Integer getLimit() { + return limit; + } + + public Integer getMaxUpcomingHours() { + return maxUpcomingHours; + } + + public String getMentionedChannelId() { + return mentionedChannelId; + } + + public Integer getOffset() { + return offset; + } + + public String getOrder() { + return order; + } + + public String getOrg() { + return org; + } + + public String getPaginated() { + return paginated; + } + + public String getSort() { + return sort; + } + + public String getStatus() { + return status; + } + + public String getTopic() { + return topic; + } + + public String getType() { + return type; + } +}
\ No newline at end of file diff --git a/src/main/java/com/pina/query/VideosByChannelIDQueryBuilder.java b/src/main/java/com/pina/query/VideosByChannelIDQueryBuilder.java index ddaa3ec..0ba9963 100644 --- a/src/main/java/com/pina/query/VideosByChannelIDQueryBuilder.java +++ b/src/main/java/com/pina/query/VideosByChannelIDQueryBuilder.java @@ -1,6 +1,9 @@ package com.pina.query; public class VideosByChannelIDQueryBuilder { + /*** + * Used to get the videos of a single channel when given the channel ID + */ private String channelId; private String type; private String include; |
