aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPinapelz <donaldshan1@outlook.com>2023-04-04 23:24:49 -0700
committerPinapelz <donaldshan1@outlook.com>2023-04-04 23:24:49 -0700
commitaa70fe1417c22383b8a88374288947362f0c6d48 (patch)
treed76a647d28bb1a7ace10661593b5b3ee8d056be3 /src
parent0bd602d575485361ce2c658ace6374c1d96ba881 (diff)
Implemented getVideosFromChannels, getVideo, and getChannels GET requests
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/pina/Holodex.java23
-rw-r--r--src/main/java/com/pina/HolodexService.java8
2 files changed, 25 insertions, 6 deletions
diff --git a/src/main/java/com/pina/Holodex.java b/src/main/java/com/pina/Holodex.java
index f1d4805..c9d1423 100644
--- a/src/main/java/com/pina/Holodex.java
+++ b/src/main/java/com/pina/Holodex.java
@@ -2,6 +2,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.VideosByChannelIDQuery;
import retrofit2.Call;
@@ -23,7 +25,7 @@ public class Holodex {
service = retrofit.create(HolodexService.class);
}
- public List<Video> getLiveVideos(VideoQueryBuilder queryBuilder) throws HolodexException {
+ public List<Video> getLiveVideos(LiveVideoQueryBuilder queryBuilder) throws HolodexException {
Call<List<Video>> call = service.getLiveVideos(queryBuilder.getChannelId(), queryBuilder.getId(),
queryBuilder.getInclude(), queryBuilder.getLang(),
queryBuilder.getLimit(), queryBuilder.getMaxUpcomingHours(),
@@ -35,7 +37,7 @@ public class Holodex {
return executeCall(call);
}
- public List<Video> getVideos(VideoQueryBuilder queryBuilder) throws HolodexException {
+ public List<Video> getVideos(LiveVideoQueryBuilder queryBuilder) throws HolodexException {
Call<List<Video>> call = service.getVideos(queryBuilder.getChannelId(), queryBuilder.getId(),
queryBuilder.getInclude(), queryBuilder.getLang(),
queryBuilder.getLimit(), queryBuilder.getMaxUpcomingHours(),
@@ -57,7 +59,24 @@ public class Holodex {
query.getLang(), query.getLimit(), query.getOffset(), query.getPaginated());
return executeCall(call);
+ }
+
+ public List<Video> getVideosFromChannels(String[] channels) throws HolodexException{
+ String channelsString = String.join(",", channels);
+ Call<List<Video>> call = service.getVideosFromChannels(channelsString);
+ return executeCall(call);
+ }
+ public Video getVideo(VideoQueryBuilder query) throws HolodexException {
+ Call<Video> call = service.getVideo(query.getVideoId(), query.getLang(), query.getC());
+ return executeCall(call);
+ }
+
+ public List<Channel> getChannels(ChannelQueryBuilder query) throws HolodexException{
+ Call<List<Channel>> call = service.getChannels(query.getLimit(), query.getOffset(), query.getType(),
+ query.getLang(), query.getOrder(), query.getOrg(), query.getSort()
+ );
+ return executeCall(call);
}
diff --git a/src/main/java/com/pina/HolodexService.java b/src/main/java/com/pina/HolodexService.java
index 40a402c..dcbb2c8 100644
--- a/src/main/java/com/pina/HolodexService.java
+++ b/src/main/java/com/pina/HolodexService.java
@@ -64,20 +64,20 @@ public interface HolodexService {
@Query("paginated") String paginated
);
- @GET("/api/v2/channels/users/live")
+ @GET("/api/v2/users/live")
Call<List<Video>> getVideosFromChannels(
- @Query("channels") String[] channels
+ @Query("channels") String channels
);
@GET("/api/v2/videos/{videoID}")
- Call<List<Video>> getVideo(
+ Call<Video> getVideo(
@Path("videoID") String videoID,
@Query("lang") String lang,
@Query("c") String c
);
@GET("/api/v2/channels")
- Call<List<Video>> getChannels(
+ Call<List<Channel>> getChannels(
@Query("limit") Integer limit,
@Query("offset") Integer offset,
@Query("type") String type,
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage