From 9c13697880b7dcb35c5ecf541e639998925380eb Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Sun, 16 Apr 2023 12:34:40 -0700 Subject: Change package path to domain url --- .../com/pinapelz/query/ChannelQueryBuilder.java | 79 +++++++++++ .../pinapelz/query/CommentSearchQueryBuilder.java | 134 ++++++++++++++++++ .../pinapelz/query/VideoByVideoIdQueryBuilder.java | 39 +++++ .../java/com/pinapelz/query/VideoQueryBuilder.java | 157 +++++++++++++++++++++ .../pinapelz/query/VideoSearchQueryBuilder.java | 134 ++++++++++++++++++ .../query/VideosByChannelIDQueryBuilder.java | 78 ++++++++++ 6 files changed, 621 insertions(+) create mode 100644 src/main/java/com/pinapelz/query/ChannelQueryBuilder.java create mode 100644 src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java create mode 100644 src/main/java/com/pinapelz/query/VideoByVideoIdQueryBuilder.java create mode 100644 src/main/java/com/pinapelz/query/VideoQueryBuilder.java create mode 100644 src/main/java/com/pinapelz/query/VideoSearchQueryBuilder.java create mode 100644 src/main/java/com/pinapelz/query/VideosByChannelIDQueryBuilder.java (limited to 'src/main/java/com/pinapelz/query') 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 lang; + private List target; + private List conditions; + private List topic; + private List vch; + private List org; + private List 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(); + this.comment = new ArrayList(); + this.org = List.of("Nijisanji"); + this.vch = new ArrayList(); + this.conditions = new ArrayList(); + this.lang = List.of("en"); + } + + public String getSort() { + return sort; + } + + public CommentSearchQueryBuilder setSort(String sort) { + this.sort = sort; + return this; + } + + public List getLang() { + return lang; + } + + public CommentSearchQueryBuilder setLang(List lang) { + this.lang = lang; + return this; + } + + public List getTarget() { + return target; + } + + public CommentSearchQueryBuilder setTarget(List target) { + this.target = target; + return this; + } + + public List getConditions() { + return conditions; + } + + public CommentSearchQueryBuilder setConditions(List conditions) { + this.conditions = conditions; + return this; + } + + public List getTopic() { + return topic; + } + + public CommentSearchQueryBuilder setTopic(List topic) { + this.topic = topic; + return this; + } + + public List getVch() { + return vch; + } + + public CommentSearchQueryBuilder setVch(List vch) { + this.vch = vch; + return this; + } + + public List getOrg() { + return org; + } + + public CommentSearchQueryBuilder setOrg(List org) { + this.org = org; + return this; + } + + public List getComment() { + return comment; + } + + public CommentSearchQueryBuilder setComment(List 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 lang; + private List target; + private List conditions; + private List topic; + private List vch; + private List org; + private List 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(); + this.comment = new ArrayList(); + this.org = List.of("Nijisanji"); + this.vch = new ArrayList(); + this.conditions = new ArrayList(); + this.lang = List.of("en"); + } + + public String getSort() { + return sort; + } + + public VideoSearchQueryBuilder setSort(String sort) { + this.sort = sort; + return this; + } + + public List getLang() { + return lang; + } + + public VideoSearchQueryBuilder setLang(List lang) { + this.lang = lang; + return this; + } + + public List getTarget() { + return target; + } + + public VideoSearchQueryBuilder setTarget(List target) { + this.target = target; + return this; + } + + public List getConditions() { + return conditions; + } + + public VideoSearchQueryBuilder setConditions(List conditions) { + this.conditions = conditions; + return this; + } + + public List getTopic() { + return topic; + } + + public VideoSearchQueryBuilder setTopic(List topic) { + this.topic = topic; + return this; + } + + public List getVch() { + return vch; + } + + public VideoSearchQueryBuilder setVch(List vch) { + this.vch = vch; + return this; + } + + public List getOrg() { + return org; + } + + public VideoSearchQueryBuilder setOrg(List org) { + this.org = org; + return this; + } + + public List getComment() { + return comment; + } + + public VideoSearchQueryBuilder setComment(List 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; + } + +} -- cgit v1.2.3