diff options
Diffstat (limited to 'src/main/java/com/pinapelz/query')
6 files changed, 621 insertions, 0 deletions
diff --git a/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java b/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java new file mode 100644 index 0000000..24d3c91 --- /dev/null +++ b/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java @@ -0,0 +1,79 @@ +package com.pinapelz.query; + +/** + * Query builder for getting a list of Channels matching the given parameters + */ +public class ChannelQueryBuilder { + private Integer limit; + private Integer offset; + private String type; + private String lang; + private String order; + private String org; + private String sort; + + public Integer getLimit() { + return limit; + } + + public ChannelQueryBuilder setLimit(Integer limit) { + this.limit = limit; + return this; + } + + public Integer getOffset() { + return offset; + } + + public ChannelQueryBuilder setOffset(Integer offset) { + this.offset = offset; + return this; + } + + public String getType() { + return type; + } + + public ChannelQueryBuilder setType(String type) { + this.type = type; + return this; + } + + public String getLang() { + return lang; + } + + public ChannelQueryBuilder setLang(String lang) { + this.lang = lang; + return this; + } + + public String getOrder() { + return order; + } + + public ChannelQueryBuilder setOrder(String order) { + this.order = order; + return this; + } + + public String getOrg() { + return org; + } + + public ChannelQueryBuilder setOrg(String org) { + this.org = org; + return this; + } + + public String getSort() { + return sort; + } + + public ChannelQueryBuilder setSort(String sort) { + this.sort = sort; + return this; + } + + +} diff --git a/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java b/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java new file mode 100644 index 0000000..eeb83d5 --- /dev/null +++ b/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java @@ -0,0 +1,134 @@ +package com.pinapelz.query; + +import java.util.ArrayList; +import java.util.List; + +/** + * Builder for a comment search query + * Default values set in constructor + */ +public class CommentSearchQueryBuilder { + private String sort; + private List<String> lang; + private List<String> target; + private List<String> conditions; + private List<String> topic; + private List<String> vch; + private List<String> org; + private List<String> comment; + private boolean paginated; + private int offset; + private int limit; + + public CommentSearchQueryBuilder(){ + this.sort = "newest"; + this.paginated = true; + this.offset = 0; + this.limit = 10; + this.topic = new ArrayList<String>(); + this.comment = new ArrayList<String>(); + this.org = List.of("Nijisanji"); + this.vch = new ArrayList<String>(); + this.conditions = new ArrayList<String>(); + this.lang = List.of("en"); + } + + public String getSort() { + return sort; + } + + public CommentSearchQueryBuilder setSort(String sort) { + this.sort = sort; + return this; + } + + public List<String> getLang() { + return lang; + } + + public CommentSearchQueryBuilder setLang(List<String> lang) { + this.lang = lang; + return this; + } + + public List<String> getTarget() { + return target; + } + + public CommentSearchQueryBuilder setTarget(List<String> target) { + this.target = target; + return this; + } + + public List<String> getConditions() { + return conditions; + } + + public CommentSearchQueryBuilder setConditions(List<String> conditions) { + this.conditions = conditions; + return this; + } + + public List<String> getTopic() { + return topic; + } + + public CommentSearchQueryBuilder setTopic(List<String> topic) { + this.topic = topic; + return this; + } + + public List<String> getVch() { + return vch; + } + + public CommentSearchQueryBuilder setVch(List<String> vch) { + this.vch = vch; + return this; + } + + public List<String> getOrg() { + return org; + } + + public CommentSearchQueryBuilder setOrg(List<String> org) { + this.org = org; + return this; + } + + public List<String> getComment() { + return comment; + } + + public CommentSearchQueryBuilder setComment(List<String> comment) { + this.comment = comment; + return this; + } + + public boolean isPaginated() { + return paginated; + } + + public CommentSearchQueryBuilder setPaginated(boolean paginated) { + this.paginated = paginated; + return this; + } + + public int getOffset() { + return offset; + } + + public CommentSearchQueryBuilder setOffset(int offset) { + this.offset = offset; + return this; + } + + public int getLimit() { + return limit; + } + + public CommentSearchQueryBuilder setLimit(int limit) { + this.limit = limit; + return this; + } +} diff --git a/src/main/java/com/pinapelz/query/VideoByVideoIdQueryBuilder.java b/src/main/java/com/pinapelz/query/VideoByVideoIdQueryBuilder.java new file mode 100644 index 0000000..7348683 --- /dev/null +++ b/src/main/java/com/pinapelz/query/VideoByVideoIdQueryBuilder.java @@ -0,0 +1,39 @@ +package com.pinapelz.query; + +/** + * Query builder for getting a video by video id + */ +public class VideoByVideoIdQueryBuilder { + private String videoId; + private String lang; + private String c; + + public String getVideoId() { + return videoId; + } + + public VideoByVideoIdQueryBuilder setVideoId(String videoId) { + this.videoId = videoId; + return this; + } + + public String getLang() { + return lang; + } + + public VideoByVideoIdQueryBuilder setLang(String lang) { + this.lang = lang; + return this; + } + + public String getC() { + return c; + } + + public VideoByVideoIdQueryBuilder setC(String c) { + this.c = c; + return this; + } + + +} diff --git a/src/main/java/com/pinapelz/query/VideoQueryBuilder.java b/src/main/java/com/pinapelz/query/VideoQueryBuilder.java new file mode 100644 index 0000000..b7072fc --- /dev/null +++ b/src/main/java/com/pinapelz/query/VideoQueryBuilder.java @@ -0,0 +1,157 @@ +package com.pinapelz.query; + +/** + * Query builder for getting a set of videos matching the given parameters + */ +public class VideoQueryBuilder { + private String channelId; + private String id; + private String include; + private String lang; + 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 VideoQueryBuilder setChannelId(String channelId) { + this.channelId = channelId; + return this; + } + + public VideoQueryBuilder setId(String id) { + this.id = id; + return this; + } + + public VideoQueryBuilder setInclude(String include) { + this.include = include; + return this; + } + + public VideoQueryBuilder setLang(String lang) { + this.lang = lang; + return this; + } + + 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 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/pinapelz/query/VideoSearchQueryBuilder.java b/src/main/java/com/pinapelz/query/VideoSearchQueryBuilder.java new file mode 100644 index 0000000..5147d97 --- /dev/null +++ b/src/main/java/com/pinapelz/query/VideoSearchQueryBuilder.java @@ -0,0 +1,134 @@ +package com.pinapelz.query; + +import java.util.ArrayList; +import java.util.List; + +/** + * Builder for a video search query + * Default values set in constructor + */ +public class VideoSearchQueryBuilder { + private String sort; + private List<String> lang; + private List<String> target; + private List<String> conditions; + private List<String> topic; + private List<String> vch; + private List<String> org; + private List<String> comment; + private boolean paginated; + private int offset; + private int limit; + + public VideoSearchQueryBuilder() { + this.sort = "newest"; + this.paginated = true; + this.offset = 0; + this.limit = 10; + this.topic = new ArrayList<String>(); + this.comment = new ArrayList<String>(); + this.org = List.of("Nijisanji"); + this.vch = new ArrayList<String>(); + this.conditions = new ArrayList<String>(); + this.lang = List.of("en"); + } + + public String getSort() { + return sort; + } + + public VideoSearchQueryBuilder setSort(String sort) { + this.sort = sort; + return this; + } + + public List<String> getLang() { + return lang; + } + + public VideoSearchQueryBuilder setLang(List<String> lang) { + this.lang = lang; + return this; + } + + public List<String> getTarget() { + return target; + } + + public VideoSearchQueryBuilder setTarget(List<String> target) { + this.target = target; + return this; + } + + public List<String> getConditions() { + return conditions; + } + + public VideoSearchQueryBuilder setConditions(List<String> conditions) { + this.conditions = conditions; + return this; + } + + public List<String> getTopic() { + return topic; + } + + public VideoSearchQueryBuilder setTopic(List<String> topic) { + this.topic = topic; + return this; + } + + public List<String> getVch() { + return vch; + } + + public VideoSearchQueryBuilder setVch(List<String> vch) { + this.vch = vch; + return this; + } + + public List<String> getOrg() { + return org; + } + + public VideoSearchQueryBuilder setOrg(List<String> org) { + this.org = org; + return this; + } + + public List<String> getComment() { + return comment; + } + + public VideoSearchQueryBuilder setComment(List<String> comment) { + this.comment = comment; + return this; + } + + public boolean isPaginated() { + return paginated; + } + + public VideoSearchQueryBuilder setPaginated(boolean paginated) { + this.paginated = paginated; + return this; + } + + public int getOffset() { + return offset; + } + + public VideoSearchQueryBuilder setOffset(int offset) { + this.offset = offset; + return this; + } + + public int getLimit() { + return limit; + } + + public VideoSearchQueryBuilder setLimit(int limit) { + this.limit = limit; + return this; + } +} diff --git a/src/main/java/com/pinapelz/query/VideosByChannelIDQueryBuilder.java b/src/main/java/com/pinapelz/query/VideosByChannelIDQueryBuilder.java new file mode 100644 index 0000000..821df24 --- /dev/null +++ b/src/main/java/com/pinapelz/query/VideosByChannelIDQueryBuilder.java @@ -0,0 +1,78 @@ +package com.pinapelz.query; + +/** + * Query builder for getting videos by a given channel id + */ +public class VideosByChannelIDQueryBuilder { + private String channelId; + private String type; + private String include; + private String lang; + private Integer limit; + private Integer offset; + private String paginated; + + public VideosByChannelIDQueryBuilder setChannelId(String channelId) { + this.channelId = channelId; + return this; + } + + public VideosByChannelIDQueryBuilder setType(String type) { + this.type = type; + return this; + } + + public VideosByChannelIDQueryBuilder setInclude(String include) { + this.include = include; + return this; + } + + public VideosByChannelIDQueryBuilder setLang(String lang) { + this.lang = lang; + return this; + } + + public VideosByChannelIDQueryBuilder setLimit(Integer limit) { + this.limit = limit; + return this; + } + + public VideosByChannelIDQueryBuilder setOffset(Integer offset) { + this.offset = offset; + return this; + } + + public VideosByChannelIDQueryBuilder setPaginated(String paginated) { + this.paginated = paginated; + return this; + } + + public String getChannelId() { + return channelId; + } + + public String getType() { + return type; + } + + public String getInclude() { + return include; + } + + public String getLang() { + return lang; + } + + public Integer getLimit() { + return limit; + } + + public Integer getOffset() { + return offset; + } + + public String getPaginated() { + return paginated; + } + +} |
