diff options
| author | Pinapelz <yukais@pinapelz.com> | 2023-11-21 19:54:09 -0800 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2023-11-21 19:54:09 -0800 |
| commit | 27b297a6870920df1ea56be6d3e784cb4cb0cee0 (patch) | |
| tree | 606062b8e6e9bc3065bc33ff11c1ac9f9a763e0f | |
| parent | f89590eeaa618233403555e2a99cb937911ee758 (diff) | |
ver 1.41 - bug fixes
- Fix bug with enum comparison
- Improve javadoc
Signed-off-by: Pinapelz <yukais@pinapelz.com>
28 files changed, 990 insertions, 29 deletions
@@ -14,13 +14,6 @@ Please check the [Holodex API](https://holodex.stoplight.io/) for more informati [](https://jitpack.io/#pinapelz/JHolodex) ### Maven ```xml -<repositories> - <repository> - <id>jitpack.io</id> - <url>https://jitpack.io</url> - </repository> -</repositories> - <dependency> <groupId>com.github.pinapelz</groupId> <artifactId>JHolodex</artifactId> @@ -79,7 +79,7 @@ <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> - <version>1.6.7</version> + <version>1.6.13</version> <extensions>true</extensions> <configuration> <serverId>ossrh</serverId> @@ -103,7 +103,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> - <version>2.9.1</version> + <version>3.6.0</version> <executions> <execution> <id>attach-javadocs</id> diff --git a/src/main/java/com/pinapelz/Holodex.java b/src/main/java/com/pinapelz/Holodex.java index 70020c2..07ca637 100644 --- a/src/main/java/com/pinapelz/Holodex.java +++ b/src/main/java/com/pinapelz/Holodex.java @@ -21,6 +21,9 @@ import java.util.concurrent.TimeUnit; /** * The class for interacting with the Holodex API + * + * @author pinapelz + * @version $Id: $Id */ public class Holodex { private HolodexService service; @@ -81,7 +84,7 @@ public class Holodex { * * @param queryBuilder the query builder * @return A list of upcoming and/or live SimpleVideos - * @throws HolodexException the holodex exception + * @throws com.pinapelz.HolodexException the holodex exception */ public List<SimpleVideo> getLiveAndUpcomingVideos(VideoQueryBuilder queryBuilder) throws HolodexException { Call<List<SimpleVideo>> call = service.getLiveVideos(queryBuilder.getChannelId(), queryBuilder.getId(), @@ -100,7 +103,7 @@ public class Holodex { * * @param queryBuilder the query builder * @return list of videos - * @throws HolodexException the holodex exception + * @throws com.pinapelz.HolodexException the holodex exception */ public List<Video> getVideos(VideoQueryBuilder queryBuilder) throws HolodexException { Call<List<Video>> call = service.getVideos(queryBuilder.getChannelId(), queryBuilder.getId(), @@ -119,7 +122,7 @@ public class Holodex { * * @param channelId the channel id * @return the Channel - * @throws HolodexException the holodex exception + * @throws com.pinapelz.HolodexException the holodex exception */ public Channel getChannel(String channelId) throws HolodexException { Call<Channel> call = service.getChannel(channelId); @@ -132,7 +135,7 @@ public class Holodex { * * @param query the query * @return List of videos matching the query - * @throws HolodexException the holodex exception + * @throws com.pinapelz.HolodexException the holodex exception */ public List<Video> getVideosByChannelId(VideosByChannelIDQueryBuilder query) throws HolodexException { Call<List<Video>> call = service.getVideosByChannelId(query.getChannelId(), query.getType(), query.getInclude(), @@ -148,7 +151,7 @@ public class Holodex { * * @param channels the channel ids to get videos from * @return List of live and/or upcoming videos where the channel id is the author - * @throws HolodexException the holodex exception + * @throws com.pinapelz.HolodexException the holodex exception */ public List<Video> getVideosFromChannels(String[] channels) throws HolodexException{ String channelsString = String.join(",", channels); @@ -161,7 +164,7 @@ public class Holodex { * * @param query the query * @return Video matching the query - * @throws HolodexException holodex exception + * @throws com.pinapelz.HolodexException holodex exception */ public Video getVideo(VideoByVideoIdQueryBuilder query) throws HolodexException { Call<Video> call = service.getVideo(query.getVideoId(), query.getLang(), query.getC()); @@ -173,7 +176,7 @@ public class Holodex { * * @param query the query * @return List of channels matching the query - * @throws HolodexException the holodex exception + * @throws com.pinapelz.HolodexException the holodex exception */ public List<Channel> getChannels(ChannelQueryBuilder query) throws HolodexException{ Call<List<Channel>> call = service.getChannels(query.getLimit(), query.getOffset(), query.getType(), @@ -186,11 +189,11 @@ public class Holodex { * Sends a POST request to search for videos matching the VideoSearchQueryBuilder attributes * If the query is paginated, the response will be a VideoSearchResult object * If the query is not paginated, the response will be a list of SimpleVideo objects - * @param query - * @return - * @throws HolodexException + * + * @param query a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + * @throws com.pinapelz.HolodexException if any. + * @return a {@link java.lang.Object} object. */ - public Object searchVideo(VideoSearchQueryBuilder query) throws HolodexException { Map<String, Object> payload = toMap(query); RequestBody body = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), @@ -208,9 +211,10 @@ public class Holodex { * Sends a POST request to search for comments matching the CommentSearchQueryBuilder attributes * If the query is paginated, the response will be a CommentSearchResult object * If the query is not paginated, the response will be a list of SimpleCommentVideo objects - * @param query - * @return - * @throws HolodexException + * + * @param query a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + * @throws com.pinapelz.HolodexException if any. + * @return a {@link java.lang.Object} object. */ public Object searchComment(CommentSearchQueryBuilder query) throws HolodexException{ Map<String, Object> payload = toMap(query); diff --git a/src/main/java/com/pinapelz/HolodexException.java b/src/main/java/com/pinapelz/HolodexException.java index d9914f8..57d54ae 100644 --- a/src/main/java/com/pinapelz/HolodexException.java +++ b/src/main/java/com/pinapelz/HolodexException.java @@ -2,6 +2,9 @@ package com.pinapelz; /** * Class for Holodex related exceptions + * + * @author pinapelz + * @version $Id: $Id */ public class HolodexException extends Exception{ /** diff --git a/src/main/java/com/pinapelz/HolodexService.java b/src/main/java/com/pinapelz/HolodexService.java index a705025..59d0506 100644 --- a/src/main/java/com/pinapelz/HolodexService.java +++ b/src/main/java/com/pinapelz/HolodexService.java @@ -9,6 +9,9 @@ import java.util.List; /** * The interface Holodex service. + * + * @author pinapelz + * @version $Id: $Id */ public interface HolodexService { /** @@ -174,8 +177,9 @@ public interface HolodexService { /** * /api/v2/search/videoSearch endpoint - * @param videoSearchResult - * @return + * + * @param videoSearchResult a {@link okhttp3.RequestBody} object. + * @return a {@link retrofit2.Call} object. */ @POST("/api/v2/search/videoSearch") @Paginated(false) @@ -183,6 +187,12 @@ public interface HolodexService { @Body RequestBody videoSearchResult ); + /** + * <p>postPaginatedVideoSearch.</p> + * + * @param videoSearchResult a {@link okhttp3.RequestBody} object. + * @return a {@link retrofit2.Call} object. + */ @POST("/api/v2/search/videoSearch") @Paginated(true) Call<VideoSearchResult> postPaginatedVideoSearch( @@ -191,8 +201,9 @@ public interface HolodexService { /** * /api/v2/search/channelSearch endpoint - * @param commentSearchResult - * @return + * + * @param commentSearchResult a {@link okhttp3.RequestBody} object. + * @return a {@link retrofit2.Call} object. */ @POST("/api/v2/search/commentSearch") @Paginated(false) @@ -200,6 +211,12 @@ public interface HolodexService { @Body RequestBody commentSearchResult ); + /** + * <p>postPaginatedCommentSearch.</p> + * + * @param commentSearchResult a {@link okhttp3.RequestBody} object. + * @return a {@link retrofit2.Call} object. + */ @POST("/api/v2/search/commentSearch") @Paginated(true) Call<CommentSearchResult> postPaginatedCommentSearch( diff --git a/src/main/java/com/pinapelz/datatypes/Channel.java b/src/main/java/com/pinapelz/datatypes/Channel.java index e7b5332..eabe812 100644 --- a/src/main/java/com/pinapelz/datatypes/Channel.java +++ b/src/main/java/com/pinapelz/datatypes/Channel.java @@ -4,6 +4,9 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; /** * Channel object + * + * @author pinapelz + * @version $Id: $Id */ @JsonIgnoreProperties(ignoreUnknown = true) public class Channel extends SimpleChannel{ diff --git a/src/main/java/com/pinapelz/datatypes/Comment.java b/src/main/java/com/pinapelz/datatypes/Comment.java index 729dfba..b9bac76 100644 --- a/src/main/java/com/pinapelz/datatypes/Comment.java +++ b/src/main/java/com/pinapelz/datatypes/Comment.java @@ -2,6 +2,9 @@ package com.pinapelz.datatypes; /** * Comment object + * + * @author pinapelz + * @version $Id: $Id */ public class Comment { public String comment_key; diff --git a/src/main/java/com/pinapelz/datatypes/CommentSearchResult.java b/src/main/java/com/pinapelz/datatypes/CommentSearchResult.java index a519bcd..937166f 100644 --- a/src/main/java/com/pinapelz/datatypes/CommentSearchResult.java +++ b/src/main/java/com/pinapelz/datatypes/CommentSearchResult.java @@ -4,6 +4,9 @@ import java.util.List; /** * Result object for a paginated comment search + * + * @author pinapelz + * @version $Id: $Id */ public class CommentSearchResult { public int total; diff --git a/src/main/java/com/pinapelz/datatypes/Paginated.java b/src/main/java/com/pinapelz/datatypes/Paginated.java index 3da558e..848c249 100644 --- a/src/main/java/com/pinapelz/datatypes/Paginated.java +++ b/src/main/java/com/pinapelz/datatypes/Paginated.java @@ -7,6 +7,9 @@ import java.lang.annotation.Target; /** * Annotation for paginated queries + * + * @author pinapelz + * @version $Id: $Id */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) diff --git a/src/main/java/com/pinapelz/datatypes/SimpleChannel.java b/src/main/java/com/pinapelz/datatypes/SimpleChannel.java index 2f78d8e..1f91ced 100644 --- a/src/main/java/com/pinapelz/datatypes/SimpleChannel.java +++ b/src/main/java/com/pinapelz/datatypes/SimpleChannel.java @@ -4,6 +4,9 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; /** * Simple channel object + * + * @author pinapelz + * @version $Id: $Id */ @JsonIgnoreProperties(ignoreUnknown = true) public class SimpleChannel { diff --git a/src/main/java/com/pinapelz/datatypes/SimpleCommentVideo.java b/src/main/java/com/pinapelz/datatypes/SimpleCommentVideo.java index d313a30..574ac8b 100644 --- a/src/main/java/com/pinapelz/datatypes/SimpleCommentVideo.java +++ b/src/main/java/com/pinapelz/datatypes/SimpleCommentVideo.java @@ -4,8 +4,10 @@ import java.util.List; /** * The same as SimpleVideo, but with comments - * @see SimpleVideo * + * @see SimpleVideo + * @author pinapelz + * @version $Id: $Id */ public class SimpleCommentVideo { public String id; diff --git a/src/main/java/com/pinapelz/datatypes/SimpleVideo.java b/src/main/java/com/pinapelz/datatypes/SimpleVideo.java index 7e2fd44..aad4dbd 100644 --- a/src/main/java/com/pinapelz/datatypes/SimpleVideo.java +++ b/src/main/java/com/pinapelz/datatypes/SimpleVideo.java @@ -4,6 +4,9 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; /** * Simple video object + * + * @author pinapelz + * @version $Id: $Id */ @JsonIgnoreProperties (ignoreUnknown = true) public class SimpleVideo { diff --git a/src/main/java/com/pinapelz/datatypes/Video.java b/src/main/java/com/pinapelz/datatypes/Video.java index fb01ac4..45fee73 100644 --- a/src/main/java/com/pinapelz/datatypes/Video.java +++ b/src/main/java/com/pinapelz/datatypes/Video.java @@ -7,6 +7,9 @@ import java.util.List; /** * Video object + * + * @author pinapelz + * @version $Id: $Id */ @JsonIgnoreProperties(ignoreUnknown = true) public class Video extends SimpleVideo { diff --git a/src/main/java/com/pinapelz/datatypes/VideoSearchResult.java b/src/main/java/com/pinapelz/datatypes/VideoSearchResult.java index 36251a1..be021d4 100644 --- a/src/main/java/com/pinapelz/datatypes/VideoSearchResult.java +++ b/src/main/java/com/pinapelz/datatypes/VideoSearchResult.java @@ -4,6 +4,9 @@ import java.util.List; /** * Result object for a paginated video search + * + * @author pinapelz + * @version $Id: $Id */ public class VideoSearchResult { public int total; diff --git a/src/main/java/com/pinapelz/factory/VideoSearchResultConverterFactory.java b/src/main/java/com/pinapelz/factory/VideoSearchResultConverterFactory.java index 0ab27c4..2bfd3c3 100644 --- a/src/main/java/com/pinapelz/factory/VideoSearchResultConverterFactory.java +++ b/src/main/java/com/pinapelz/factory/VideoSearchResultConverterFactory.java @@ -12,12 +12,24 @@ import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.util.List; +/** + * <p>VideoSearchResultConverterFactory class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public class VideoSearchResultConverterFactory extends Converter.Factory { + /** + * <p>create.</p> + * + * @return a {@link com.pinapelz.factory.VideoSearchResultConverterFactory} object. + */ public static VideoSearchResultConverterFactory create() { return new VideoSearchResultConverterFactory(); } + /** {@inheritDoc} */ @Override public Converter<ResponseBody, ?> responseBodyConverter(Type type, Annotation[] annotations, Retrofit retrofit) { boolean isPaginated = false; diff --git a/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java b/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java index 329427c..c071497 100644 --- a/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java +++ b/src/main/java/com/pinapelz/query/ChannelQueryBuilder.java @@ -9,6 +9,9 @@ import java.util.List; /** * Query builder for getting a list of Channels matching the given parameters + * + * @author pinapelz + * @version $Id: $Id */ public class ChannelQueryBuilder { private Integer limit; @@ -19,47 +22,103 @@ public class ChannelQueryBuilder { private String org; private String sort; + /** + * <p>Getter for the field <code>limit</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getLimit() { return limit; } + /** + * <p>Setter for the field <code>limit</code>.</p> + * + * @param limit a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setLimit(Integer limit) { this.limit = limit; return this; } + /** + * <p>Getter for the field <code>offset</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getOffset() { return offset; } + /** + * <p>Setter for the field <code>offset</code>.</p> + * + * @param offset a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setOffset(Integer offset) { this.offset = offset; return this; } + /** + * <p>Getter for the field <code>type</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getType() { return type; } + /** + * <p>Setter for the field <code>type</code>.</p> + * + * @param type a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setType(String type) { this.type = type; return this; } + /** + * <p>Getter for the field <code>lang</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getLang() { return lang; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setLang(String lang) { this.lang = lang; return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link com.pinapelz.vtuber.Language} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setLang(Language lang) { this.lang = lang.toString(); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param language a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setLang(List<Language> language) { String[] languages = new String[language.size()]; for (int i = 0; i < language.size(); i++) { @@ -69,43 +128,94 @@ public class ChannelQueryBuilder { return this; } + /** + * <p>Getter for the field <code>order</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getOrder() { return order; } + /** + * <p>Setter for the field <code>order</code>.</p> + * + * @param order a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setOrder(String order) { this.order = order; return this; } + /** + * <p>Setter for the field <code>order</code>.</p> + * + * @param order a {@link com.pinapelz.vtuber.Order} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setOrder(Order order){ this.order = order.toString(); return this; } + /** + * <p>Getter for the field <code>org</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getOrg() { return org; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setOrg(String org) { this.org = org; return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link com.pinapelz.vtuber.Organization} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setOrg(Organization org) { this.org = org.toString(); return this; } + /** + * <p>Getter for the field <code>sort</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getSort() { return sort; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setSort(String sort) { this.sort = sort; return this; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link com.pinapelz.vtuber.Sort} object. + * @return a {@link com.pinapelz.query.ChannelQueryBuilder} object. + */ public ChannelQueryBuilder setSort(Sort sort){ this.sort = sort.toString(); return this; diff --git a/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java b/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java index 6c1fa90..df96256 100644 --- a/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java +++ b/src/main/java/com/pinapelz/query/CommentSearchQueryBuilder.java @@ -11,6 +11,9 @@ import java.util.List; /** * Builder for a comment search query * Default values set in constructor + * + * @author pinapelz + * @version $Id: $Id */ public class CommentSearchQueryBuilder { private String sort; @@ -25,6 +28,9 @@ public class CommentSearchQueryBuilder { private int limit; private List<String> lang; + /** + * <p>Constructor for CommentSearchQueryBuilder.</p> + */ public CommentSearchQueryBuilder(){ this.sort = "newest"; this.paginated = true; @@ -38,34 +44,74 @@ public class CommentSearchQueryBuilder { this.lang = List.of("en"); } + /** + * <p>Getter for the field <code>sort</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getSort() { return sort; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setSort(String sort) { this.sort = sort; return this; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link com.pinapelz.vtuber.Sort} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setSort(Sort sort) { this.sort = sort.toString(); return this; } + /** + * <p>Getter for the field <code>lang</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getLang() { return lang; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setLang(String lang) { this.lang = List.of(lang); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link com.pinapelz.vtuber.Language} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setLang(Language lang) { this.lang = List.of(lang.toString()); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param language an array of {@link com.pinapelz.vtuber.Language} objects. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setLang(Language[] language) { List<String> lang = new ArrayList<String>(); for (Language l : language) { @@ -75,20 +121,43 @@ public class CommentSearchQueryBuilder { return this; } + /** + * <p>Getter for the field <code>target</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getTarget() { return target; } + /** + * <p>Setter for the field <code>target</code>.</p> + * + * @param target a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setTarget(String target) { this.target = List.of(target); return this; } + /** + * <p>Setter for the field <code>target</code>.</p> + * + * @param target a {@link com.pinapelz.vtuber.Type} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setTarget(Type target) { this.target = List.of(target.toString()); return this; } + /** + * <p>Setter for the field <code>target</code>.</p> + * + * @param target a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setTarget(List<Type> target) { List<String> targets = new ArrayList<String>(); for (Type t : target) { @@ -100,47 +169,103 @@ public class CommentSearchQueryBuilder { + /** + * <p>Getter for the field <code>conditions</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getConditions() { return conditions; } + /** + * <p>Setter for the field <code>conditions</code>.</p> + * + * @param conditions a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setConditions(List<String> conditions) { this.conditions = conditions; return this; } + /** + * <p>Getter for the field <code>topic</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getTopic() { return topic; } + /** + * <p>Setter for the field <code>topic</code>.</p> + * + * @param topic a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setTopic(List<String> topic) { this.topic = topic; return this; } + /** + * <p>Getter for the field <code>vch</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getVch() { return vch; } + /** + * <p>Setter for the field <code>vch</code>.</p> + * + * @param vch a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setVch(List<String> vch) { this.vch = vch; return this; } + /** + * <p>Getter for the field <code>org</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getOrg() { return org; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setOrg(String org) { this.org = List.of(org); return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link com.pinapelz.vtuber.Organization} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setOrg(Organization org) { this.org = List.of(org.toString()); return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setOrg(List<Organization> org) { List<String> orgs = new ArrayList<String>(); for (Organization o : org) { @@ -151,37 +276,81 @@ public class CommentSearchQueryBuilder { } + /** + * <p>Getter for the field <code>comment</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getComment() { return comment; } + /** + * <p>Setter for the field <code>comment</code>.</p> + * + * @param comment a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setComment(List<String> comment) { this.comment = comment; return this; } + /** + * <p>isPaginated.</p> + * + * @return a boolean. + */ public boolean isPaginated() { return paginated; } + /** + * <p>Setter for the field <code>paginated</code>.</p> + * + * @param paginated a boolean. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setPaginated(boolean paginated) { this.paginated = paginated; return this; } + /** + * <p>Getter for the field <code>offset</code>.</p> + * + * @return a int. + */ public int getOffset() { return offset; } + /** + * <p>Setter for the field <code>offset</code>.</p> + * + * @param offset a int. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ public CommentSearchQueryBuilder setOffset(int offset) { this.offset = offset; return this; } + /** + * <p>Getter for the field <code>limit</code>.</p> + * + * @return a int. + */ public int getLimit() { return limit; } + /** + * <p>Setter for the field <code>limit</code>.</p> + * + * @param limit a int. + * @return a {@link com.pinapelz.query.CommentSearchQueryBuilder} object. + */ 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 index 6729916..56d51b6 100644 --- a/src/main/java/com/pinapelz/query/VideoByVideoIdQueryBuilder.java +++ b/src/main/java/com/pinapelz/query/VideoByVideoIdQueryBuilder.java @@ -7,36 +7,73 @@ import java.util.List; /** * Query builder for getting a video by video id + * + * @author pinapelz + * @version $Id: $Id */ public class VideoByVideoIdQueryBuilder { private String videoId; private String lang; private String c; + /** + * <p>Getter for the field <code>videoId</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getVideoId() { return videoId; } + /** + * <p>Setter for the field <code>videoId</code>.</p> + * + * @param videoId a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoByVideoIdQueryBuilder} object. + */ public VideoByVideoIdQueryBuilder setVideoId(String videoId) { this.videoId = videoId; return this; } + /** + * <p>Getter for the field <code>lang</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getLang() { return lang; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoByVideoIdQueryBuilder} object. + */ public VideoByVideoIdQueryBuilder setLang(String lang) { this.lang = lang; return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link com.pinapelz.vtuber.Language} object. + * @return a {@link com.pinapelz.query.VideoByVideoIdQueryBuilder} object. + */ public VideoByVideoIdQueryBuilder setLang(Language lang) { this.lang = lang.toString(); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param language a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoByVideoIdQueryBuilder} object. + */ public VideoByVideoIdQueryBuilder setLang(List<Language> language) { String[] languages = new String[language.size()]; for (int i = 0; i < language.size(); i++) { @@ -46,10 +83,21 @@ public class VideoByVideoIdQueryBuilder { return this; } + /** + * <p>Getter for the field <code>c</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getC() { return c; } + /** + * <p>Setter for the field <code>c</code>.</p> + * + * @param c a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoByVideoIdQueryBuilder} object. + */ 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 index 6a74217..56555a2 100644 --- a/src/main/java/com/pinapelz/query/VideoQueryBuilder.java +++ b/src/main/java/com/pinapelz/query/VideoQueryBuilder.java @@ -8,6 +8,9 @@ import java.util.List; /** * Query builder for getting a set of videos matching the given parameters + * + * @author pinapelz + * @version $Id: $Id */ public class VideoQueryBuilder { private String channelId; @@ -26,26 +29,56 @@ public class VideoQueryBuilder { private String topic; private String type; + /** + * <p>Setter for the field <code>channelId</code>.</p> + * + * @param channelId a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setChannelId(String channelId) { this.channelId = channelId; return this; } + /** + * <p>Setter for the field <code>id</code>.</p> + * + * @param id a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setId(String id) { this.id = id; return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setInclude(String include) { this.include = include; return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include a {@link com.pinapelz.vtuber.ExtraData} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setInclude(ExtraData include) { this.include = include.toString(); return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setInclude(List<ExtraData> include){ String[] includeStrings = new String[include.size()]; for (int i = 0; i < include.size(); i++) { @@ -55,16 +88,34 @@ public class VideoQueryBuilder { return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setLang(String lang) { this.lang = lang; return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link com.pinapelz.vtuber.Language} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setLang(Language lang) { this.lang = lang.toString(); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setLang(List<Language> lang) { String[] langStrings = new String[lang.size()]; for (int i = 0; i < lang.size(); i++) { @@ -75,138 +126,303 @@ public class VideoQueryBuilder { } + /** + * <p>Setter for the field <code>limit</code>.</p> + * + * @param limit a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setLimit(Integer limit) { this.limit = limit; return this; } + /** + * <p>Setter for the field <code>maxUpcomingHours</code>.</p> + * + * @param maxUpcomingHours a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setMaxUpcomingHours(Integer maxUpcomingHours) { this.maxUpcomingHours = maxUpcomingHours; return this; } + /** + * <p>Setter for the field <code>mentionedChannelId</code>.</p> + * + * @param mentionedChannelId a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setMentionedChannelId(String mentionedChannelId) { this.mentionedChannelId = mentionedChannelId; return this; } + /** + * <p>Setter for the field <code>offset</code>.</p> + * + * @param offset a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setOffset(Integer offset) { this.offset = offset; return this; } + /** + * <p>Setter for the field <code>order</code>.</p> + * + * @param order a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setOrder(String order) { this.order = order; return this; } + /** + * <p>Setter for the field <code>order</code>.</p> + * + * @param order a {@link com.pinapelz.vtuber.Order} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setOrder(Order order) { this.order = order.toString(); return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setOrg(String org) { this.org = org; return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link com.pinapelz.vtuber.Organization} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setOrg(Organization org) { this.org = org.toString(); return this; } + /** + * <p>Setter for the field <code>paginated</code>.</p> + * + * @param paginated a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setPaginated(String paginated) { this.paginated = paginated; return this; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setSort(String sort) { this.sort = sort; return this; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link com.pinapelz.vtuber.Sort} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setSort(Sort sort) { this.sort = sort.toString(); return this; } + /** + * <p>Setter for the field <code>status</code>.</p> + * + * @param status a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setStatus(String status) { this.status = status; return this; } + /** + * <p>Setter for the field <code>status</code>.</p> + * + * @param status a {@link com.pinapelz.vtuber.Status} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setStatus(Status status) { this.status = status.toString(); return this; } + /** + * <p>Setter for the field <code>topic</code>.</p> + * + * @param topic a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setTopic(String topic) { this.topic = topic; return this; } + /** + * <p>Setter for the field <code>type</code>.</p> + * + * @param type a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoQueryBuilder} object. + */ public VideoQueryBuilder setType(String type) { this.type = type; return this; } + /** + * <p>Getter for the field <code>channelId</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getChannelId() { return channelId; } + /** + * <p>Getter for the field <code>id</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getId() { return id; } + /** + * <p>Getter for the field <code>include</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getInclude() { return include; } + /** + * <p>Getter for the field <code>lang</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getLang() { return lang; } + /** + * <p>Getter for the field <code>limit</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getLimit() { return limit; } + /** + * <p>Getter for the field <code>maxUpcomingHours</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getMaxUpcomingHours() { return maxUpcomingHours; } + /** + * <p>Getter for the field <code>mentionedChannelId</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getMentionedChannelId() { return mentionedChannelId; } + /** + * <p>Getter for the field <code>offset</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getOffset() { return offset; } + /** + * <p>Getter for the field <code>order</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getOrder() { return order; } + /** + * <p>Getter for the field <code>org</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getOrg() { return org; } + /** + * <p>Getter for the field <code>paginated</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getPaginated() { return paginated; } + /** + * <p>Getter for the field <code>sort</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getSort() { return sort; } + /** + * <p>Getter for the field <code>status</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getStatus() { return status; } + /** + * <p>Getter for the field <code>topic</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getTopic() { return topic; } + /** + * <p>Getter for the field <code>type</code>.</p> + * + * @return a {@link java.lang.String} object. + */ 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 index 0a42716..eebcaa2 100644 --- a/src/main/java/com/pinapelz/query/VideoSearchQueryBuilder.java +++ b/src/main/java/com/pinapelz/query/VideoSearchQueryBuilder.java @@ -11,6 +11,9 @@ import java.util.List; /** * Builder for a video search query * Default values set in constructor + * + * @author pinapelz + * @version $Id: $Id */ public class VideoSearchQueryBuilder { private String sort; @@ -25,6 +28,9 @@ public class VideoSearchQueryBuilder { private int offset; private int limit; + /** + * <p>Constructor for VideoSearchQueryBuilder.</p> + */ public VideoSearchQueryBuilder() { this.sort = "newest"; this.paginated = true; @@ -38,53 +44,116 @@ public class VideoSearchQueryBuilder { this.lang = List.of("en"); } + /** + * <p>Getter for the field <code>sort</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getSort() { return sort; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setSort(String sort) { this.sort = sort; return this; } + /** + * <p>Setter for the field <code>sort</code>.</p> + * + * @param sort a {@link com.pinapelz.vtuber.Sort} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setSort(Sort sort) { this.sort = sort.toString(); return this; } + /** + * <p>Getter for the field <code>lang</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getLang() { return lang; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setLang(String lang) { this.lang = List.of(lang); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link com.pinapelz.vtuber.Language} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setLang(Language lang) { this.lang = List.of(lang.toString()); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param language a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setLang(List<String> language) { this.lang = language; return this; } + /** + * <p>Getter for the field <code>target</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getTarget() { return target; } + /** + * <p>Setter for the field <code>target</code>.</p> + * + * @param target a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setTarget(String target) { this.target = List.of(target); return this; } + /** + * <p>Setter for the field <code>target</code>.</p> + * + * @param target a {@link com.pinapelz.vtuber.Type} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setTarget(Type target) { this.target = List.of(target.toString()); return this; } + /** + * <p>Setter for the field <code>target</code>.</p> + * + * @param target a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setTarget(List<Type> target) { List<String> targets = new ArrayList<String>(); for (Type t : target) { @@ -95,47 +164,103 @@ public class VideoSearchQueryBuilder { } + /** + * <p>Getter for the field <code>conditions</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getConditions() { return conditions; } + /** + * <p>Setter for the field <code>conditions</code>.</p> + * + * @param conditions a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setConditions(List<String> conditions) { this.conditions = conditions; return this; } + /** + * <p>Getter for the field <code>topic</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getTopic() { return topic; } + /** + * <p>Setter for the field <code>topic</code>.</p> + * + * @param topic a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setTopic(List<String> topic) { this.topic = topic; return this; } + /** + * <p>Getter for the field <code>vch</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getVch() { return vch; } + /** + * <p>Setter for the field <code>vch</code>.</p> + * + * @param vch a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setVch(List<String> vch) { this.vch = vch; return this; } + /** + * <p>Getter for the field <code>org</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getOrg() { return org; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setOrg(String org) { this.org = List.of(org); return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link com.pinapelz.vtuber.Organization} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setOrg(Organization org) { this.org = List.of(org.toString()); return this; } + /** + * <p>Setter for the field <code>org</code>.</p> + * + * @param org a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setOrg(List<Organization> org) { List<String> orgs = new ArrayList<String>(); for (Organization o : org) { @@ -145,37 +270,81 @@ public class VideoSearchQueryBuilder { return this; } + /** + * <p>Getter for the field <code>comment</code>.</p> + * + * @return a {@link java.util.List} object. + */ public List<String> getComment() { return comment; } + /** + * <p>Setter for the field <code>comment</code>.</p> + * + * @param comment a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setComment(List<String> comment) { this.comment = comment; return this; } + /** + * <p>isPaginated.</p> + * + * @return a boolean. + */ public boolean isPaginated() { return paginated; } + /** + * <p>Setter for the field <code>paginated</code>.</p> + * + * @param paginated a boolean. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setPaginated(boolean paginated) { this.paginated = paginated; return this; } + /** + * <p>Getter for the field <code>offset</code>.</p> + * + * @return a int. + */ public int getOffset() { return offset; } + /** + * <p>Setter for the field <code>offset</code>.</p> + * + * @param offset a int. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ public VideoSearchQueryBuilder setOffset(int offset) { this.offset = offset; return this; } + /** + * <p>Getter for the field <code>limit</code>.</p> + * + * @return a int. + */ public int getLimit() { return limit; } + /** + * <p>Setter for the field <code>limit</code>.</p> + * + * @param limit a int. + * @return a {@link com.pinapelz.query.VideoSearchQueryBuilder} object. + */ 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 index 9047f1a..980969c 100644 --- a/src/main/java/com/pinapelz/query/VideosByChannelIDQueryBuilder.java +++ b/src/main/java/com/pinapelz/query/VideosByChannelIDQueryBuilder.java @@ -7,6 +7,9 @@ import java.util.List; /** * Query builder for getting videos by a given channel id + * + * @author pinapelz + * @version $Id: $Id */ public class VideosByChannelIDQueryBuilder { private String channelId; @@ -17,26 +20,56 @@ public class VideosByChannelIDQueryBuilder { private Integer offset; private String paginated; + /** + * <p>Setter for the field <code>channelId</code>.</p> + * + * @param channelId a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setChannelId(String channelId) { this.channelId = channelId; return this; } + /** + * <p>Setter for the field <code>type</code>.</p> + * + * @param type a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setType(String type) { this.type = type; return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setInclude(String include) { this.include = include; return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include an array of {@link java.lang.String} objects. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setInclude(String[] include) { this.include = String.join(",", include); return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include an array of {@link com.pinapelz.vtuber.ExtraData} objects. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setInclude(ExtraData[] include) { String[] includeStrings = new String[include.length]; for (int i = 0; i < include.length; i++) { @@ -46,6 +79,12 @@ public class VideosByChannelIDQueryBuilder { return this; } + /** + * <p>Setter for the field <code>include</code>.</p> + * + * @param include a {@link com.pinapelz.vtuber.ExtraData} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setInclude(ExtraData include) { this.include = include.toString(); return this; @@ -53,16 +92,34 @@ public class VideosByChannelIDQueryBuilder { + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setLang(String lang) { this.lang = lang; return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link com.pinapelz.vtuber.Language} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setLang(Language lang) { this.lang = lang.toString(); return this; } + /** + * <p>Setter for the field <code>lang</code>.</p> + * + * @param lang a {@link java.util.List} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setLang(List<Language> lang){ String[] langStrings = new String[lang.size()]; for (int i = 0; i < lang.size(); i++) { @@ -72,45 +129,98 @@ public class VideosByChannelIDQueryBuilder { return this; } + /** + * <p>Setter for the field <code>limit</code>.</p> + * + * @param limit a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setLimit(Integer limit) { this.limit = limit; return this; } + /** + * <p>Setter for the field <code>offset</code>.</p> + * + * @param offset a {@link java.lang.Integer} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setOffset(Integer offset) { this.offset = offset; return this; } + /** + * <p>Setter for the field <code>paginated</code>.</p> + * + * @param paginated a {@link java.lang.String} object. + * @return a {@link com.pinapelz.query.VideosByChannelIDQueryBuilder} object. + */ public VideosByChannelIDQueryBuilder setPaginated(String paginated) { this.paginated = paginated; return this; } + /** + * <p>Getter for the field <code>channelId</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getChannelId() { return channelId; } + /** + * <p>Getter for the field <code>type</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getType() { return type; } + /** + * <p>Getter for the field <code>include</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getInclude() { return include; } + /** + * <p>Getter for the field <code>lang</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getLang() { return lang; } + /** + * <p>Getter for the field <code>limit</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getLimit() { return limit; } + /** + * <p>Getter for the field <code>offset</code>.</p> + * + * @return a {@link java.lang.Integer} object. + */ public Integer getOffset() { return offset; } + /** + * <p>Getter for the field <code>paginated</code>.</p> + * + * @return a {@link java.lang.String} object. + */ public String getPaginated() { return paginated; } diff --git a/src/main/java/com/pinapelz/vtuber/ExtraData.java b/src/main/java/com/pinapelz/vtuber/ExtraData.java index c7d512a..a29b728 100644 --- a/src/main/java/com/pinapelz/vtuber/ExtraData.java +++ b/src/main/java/com/pinapelz/vtuber/ExtraData.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>ExtraData class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum ExtraData { CLIPS("clips"), REFERS("refers"), @@ -17,10 +23,15 @@ public enum ExtraData { this.value = value; } + /** {@inheritDoc} */ @Override public String toString() { return value; } + public boolean isExtraData(String extraData) { + return this.value.equals(extraData); + } + } diff --git a/src/main/java/com/pinapelz/vtuber/Language.java b/src/main/java/com/pinapelz/vtuber/Language.java index a94dcb0..6a520a4 100644 --- a/src/main/java/com/pinapelz/vtuber/Language.java +++ b/src/main/java/com/pinapelz/vtuber/Language.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>Language class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum Language { ENGLISH("en"), JAPANESE("jp"), @@ -16,9 +22,14 @@ public enum Language { this.code = code; } + /** {@inheritDoc} */ @Override public String toString() { return code; } + public boolean isLanguage(String language) { + return this.code.equals(language); + } + } diff --git a/src/main/java/com/pinapelz/vtuber/Order.java b/src/main/java/com/pinapelz/vtuber/Order.java index 97f3795..344ac5e 100644 --- a/src/main/java/com/pinapelz/vtuber/Order.java +++ b/src/main/java/com/pinapelz/vtuber/Order.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>Order class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum Order { ASC("asc"), DESC("desc"); @@ -9,8 +15,13 @@ public enum Order { this.value = value; } + /** {@inheritDoc} */ @Override public String toString() { return value; } + + public boolean isOrderBy(String order) { + return this.value.equals(order); + } } diff --git a/src/main/java/com/pinapelz/vtuber/Organization.java b/src/main/java/com/pinapelz/vtuber/Organization.java index 5c89db3..d14f872 100644 --- a/src/main/java/com/pinapelz/vtuber/Organization.java +++ b/src/main/java/com/pinapelz/vtuber/Organization.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>Organization class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum Organization { HOLOLIVE("Hololive"), NIJISANJI("Nijisanji"), @@ -83,11 +89,16 @@ public enum Organization { this.name = name; } + /** {@inheritDoc} */ @Override public String toString() { return name; } + public boolean isOrg(String org) { + return this.name.equals(org); + } + diff --git a/src/main/java/com/pinapelz/vtuber/Sort.java b/src/main/java/com/pinapelz/vtuber/Sort.java index 535e5a9..0367d93 100644 --- a/src/main/java/com/pinapelz/vtuber/Sort.java +++ b/src/main/java/com/pinapelz/vtuber/Sort.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>Sort class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum Sort { NEWEST("newest"), START_SCHEDULED("start_scheduled"), @@ -12,9 +18,14 @@ public enum Sort { this.value = value; } + /** {@inheritDoc} */ @Override public String toString() { return value; } + public boolean isSortBy(String sort) { + return this.value.equals(sort); + } + } diff --git a/src/main/java/com/pinapelz/vtuber/Status.java b/src/main/java/com/pinapelz/vtuber/Status.java index 530a725..4b35635 100644 --- a/src/main/java/com/pinapelz/vtuber/Status.java +++ b/src/main/java/com/pinapelz/vtuber/Status.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>Status class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum Status { LIVE("live"), UPCOMING("upcoming"), @@ -13,9 +19,14 @@ public enum Status { this.value = value; } + /** {@inheritDoc} */ @Override public String toString() { return value; } + public boolean isStatus(String status) { + return this.value.equals(status); + } + } diff --git a/src/main/java/com/pinapelz/vtuber/Type.java b/src/main/java/com/pinapelz/vtuber/Type.java index 0cbfdf8..bd128d2 100644 --- a/src/main/java/com/pinapelz/vtuber/Type.java +++ b/src/main/java/com/pinapelz/vtuber/Type.java @@ -1,5 +1,11 @@ package com.pinapelz.vtuber; +/** + * <p>Type class.</p> + * + * @author pinapelz + * @version $Id: $Id + */ public enum Type { STREAM("stream"), CLIP("clip"); @@ -9,8 +15,20 @@ public enum Type { this.value = value; } + /** {@inheritDoc} */ @Override public String toString() { return value; } + + + public boolean equals(Type other) { + return this.value.equals(other.value); + } + + public boolean isType(String type) { + return this.value.equals(type); + } + + } |
