File tree Expand file tree Collapse file tree 3 files changed +67
-1
lines changed
src/main/java/org/kohsuke/github Expand file tree Collapse file tree 3 files changed +67
-1
lines changed Original file line number Diff line number Diff line change 2
2
<modelVersion >4.0.0</modelVersion >
3
3
<groupId >org.kohsuke</groupId >
4
4
<artifactId >cortexapps-github-api</artifactId >
5
- <version >1.318 </version >
5
+ <version >1.319 </version >
6
6
<name >GitHub API for Java</name >
7
7
<url >https://github-api.kohsuke.org/</url >
8
8
<description >GitHub API for Java</description >
Original file line number Diff line number Diff line change
1
+ package org .kohsuke .github ;
2
+
3
+ /**
4
+ * Builds up the query for listing releases.
5
+ *
6
+ * @author eyalfoni
7
+ * @see GHRepository#queryReleases()
8
+ */
9
+ public class GHReleaseQueryBuilder {
10
+ private final Requester req ;
11
+ private final GHRepository repo ;
12
+
13
+ /**
14
+ * Instantiates a new GH release query builder.
15
+ *
16
+ * @param repo
17
+ * the repo
18
+ */
19
+ GHReleaseQueryBuilder (GHRepository repo ) {
20
+ this .repo = repo ;
21
+ this .req = repo .root ().createRequest (); // requester to build up
22
+ }
23
+
24
+ /**
25
+ * Page gh release query builder.
26
+ *
27
+ * @param page
28
+ * the page
29
+ * @return the gh release query builder
30
+ */
31
+ public GHReleaseQueryBuilder page (int page ) {
32
+ req .with ("page" , page );
33
+ return this ;
34
+ }
35
+
36
+ /**
37
+ * Page size gh release query builder.
38
+ *
39
+ * @param pageSize
40
+ * the page size
41
+ * @return the gh release query builder
42
+ */
43
+ public GHReleaseQueryBuilder pageSize (int pageSize ) {
44
+ req .with ("per_page" , pageSize );
45
+ return this ;
46
+ }
47
+
48
+ /**
49
+ * Lists up the releases with the criteria built so far.
50
+ *
51
+ * @return the paged iterable
52
+ */
53
+ public PagedIterable <GHRelease > list () {
54
+ return req .withUrlPath (repo .getApiTailUrl ("releases" )).toIterable (GHRelease [].class , item -> item .wrap (repo ));
55
+ }
56
+ }
Original file line number Diff line number Diff line change @@ -2102,6 +2102,16 @@ public GHCommitQueryBuilder queryCommits() {
2102
2102
return new GHCommitQueryBuilder (this );
2103
2103
}
2104
2104
2105
+
2106
+ /**
2107
+ * List releases with pagination through a builder pattern.
2108
+ *
2109
+ * @return the gh release query builder
2110
+ */
2111
+ public GHReleaseQueryBuilder queryReleases () {
2112
+ return new GHReleaseQueryBuilder (this );
2113
+ }
2114
+
2105
2115
/**
2106
2116
* Lists up all the commit comments in this repository.
2107
2117
*
You can’t perform that action at this time.
0 commit comments