From 65415c88d34024811c72bb7ca96dd1518b7aa0d1 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Tue, 4 Apr 2023 16:19:06 -0700 Subject: Use LiveStreamsQueryBuilder to construct queries regarding livestreams A query builder is used to avoid the need for adding null checks or nullable decorators to HolodexService.java --- src/main/java/com/pina/Holodex.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/main/java/com/pina/Holodex.java') diff --git a/src/main/java/com/pina/Holodex.java b/src/main/java/com/pina/Holodex.java index 38c519a..48e3e9c 100644 --- a/src/main/java/com/pina/Holodex.java +++ b/src/main/java/com/pina/Holodex.java @@ -1,5 +1,6 @@ package com.pina; +import com.pina.query.LiveStreamsQueryBuilder; import retrofit2.Call; import retrofit2.Response; import retrofit2.Retrofit; @@ -18,13 +19,19 @@ public class Holodex { .build(); service = retrofit.create(HolodexService.class); } - public List getLiveStreams() throws HolodexException { - Call> call = service.getLiveStreams("channel,clip"); + public List getLiveStreams(LiveStreamsQueryBuilder queryBuilder) throws HolodexException { + Call> call = service.getLiveStreams(queryBuilder.getChannelId(), queryBuilder.getId(), + queryBuilder.getInclude(), queryBuilder.getLang(), + queryBuilder.getLimit(), queryBuilder.getMaxUpcomingHours(), + queryBuilder.getMentionedChannelId(), queryBuilder.getOffset(), + queryBuilder.getOrder(), queryBuilder.getOrg(), + queryBuilder.getPaginated(), queryBuilder.getSort(), + queryBuilder.getStatus(), queryBuilder.getTopic(), + queryBuilder.getType()); return executeCall(call); } - public List getUpcomingStreams() throws HolodexException { - Call> call = service.getUpcomingStreams("channel,clip"); + Call> call = service.getUpcomingStreams("channel"); return executeCall(call); } -- cgit v1.2.3