@@ -97,15 +97,29 @@ public CompletableFuture<List<PullRequestItem>> list(final PullRequestParameters
97
97
/**
98
98
* Get a specific pull request.
99
99
*
100
+ * @deprecated Use {@link #get(long)} instead
100
101
* @param number pull request number
101
102
* @return pull request
102
103
*/
104
+ @ Deprecated
103
105
public CompletableFuture <PullRequest > get (final int number ) {
104
106
final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
105
107
log .debug ("Fetching pull request from " + path );
106
108
return github .request (path , PullRequest .class );
107
109
}
108
110
111
+ /**
112
+ * Get a specific pull request.
113
+ *
114
+ * @param number pull request number
115
+ * @return pull request
116
+ */
117
+ public CompletableFuture <PullRequest > get (final long number ) {
118
+ final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
119
+ log .debug ("Fetching pull request from " + path );
120
+ return github .request (path , PullRequest .class );
121
+ }
122
+
109
123
/**
110
124
* Create a pull request.
111
125
*
@@ -120,60 +134,120 @@ public CompletableFuture<PullRequest> create(final PullRequestCreate request) {
120
134
/**
121
135
* Update given pull request.
122
136
*
137
+ * @deprecated Use {@link #update(long, PullRequestUpdate)} instead
123
138
* @param number pull request number
124
139
* @param request update request
125
140
* @return pull request
126
141
*/
142
+ @ Deprecated
127
143
public CompletableFuture <PullRequest > update (final int number , final PullRequestUpdate request ) {
128
144
final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
129
145
return github .patch (path , github .json ().toJsonUnchecked (request ), PullRequest .class );
130
146
}
131
147
148
+ /**
149
+ * Update given pull request.
150
+ *
151
+ * @param number pull request number
152
+ * @param request update request
153
+ * @return pull request
154
+ */
155
+ public CompletableFuture <PullRequest > update (final long number , final PullRequestUpdate request ) {
156
+ final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
157
+ return github .patch (path , github .json ().toJsonUnchecked (request ), PullRequest .class );
158
+ }
159
+
132
160
/**
133
161
* List pull request commits.
134
162
*
163
+ * @deprecated Use {@link #listCommits(long)} instead
135
164
* @param number pull request number
136
165
* @return commits
137
166
*/
167
+ @ Deprecated
138
168
public CompletableFuture <List <CommitItem >> listCommits (final int number ) {
139
169
final String path = String .format (PR_COMMITS_TEMPLATE , owner , repo , number );
140
170
log .debug ("Fetching pull request commits from " + path );
141
171
return github .request (path , LIST_COMMIT_TYPE_REFERENCE );
142
172
}
143
173
174
+ /**
175
+ * List pull request commits.
176
+ *
177
+ * @param number pull request number
178
+ * @return commits
179
+ */
180
+ public CompletableFuture <List <CommitItem >> listCommits (final long number ) {
181
+ final String path = String .format (PR_COMMITS_TEMPLATE , owner , repo , number );
182
+ log .debug ("Fetching pull request commits from " + path );
183
+ return github .request (path , LIST_COMMIT_TYPE_REFERENCE );
184
+ }
185
+
144
186
/**
145
187
* List pull request reviews. Reviews are returned in chronological order.
146
188
*
189
+ * @deprecated Use {@link #listReviews(long)} instead
147
190
* @param number pull request number
148
191
* @return list of reviews
149
192
*/
193
+ @ Deprecated
150
194
public CompletableFuture <List <Review >> listReviews (final int number ) {
151
195
final String path = String .format (PR_REVIEWS_TEMPLATE , owner , repo , number );
152
196
log .debug ("Fetching pull request reviews from " + path );
153
197
return github .request (path , LIST_REVIEW_TYPE_REFERENCE );
154
198
}
155
199
200
+ /**
201
+ * List pull request reviews. Reviews are returned in chronological order.
202
+ *
203
+ * @param number pull request number
204
+ * @return list of reviews
205
+ */
206
+ public CompletableFuture <List <Review >> listReviews (final long number ) {
207
+ final String path = String .format (PR_REVIEWS_TEMPLATE , owner , repo , number );
208
+ log .debug ("Fetching pull request reviews from " + path );
209
+ return github .request (path , LIST_REVIEW_TYPE_REFERENCE );
210
+ }
211
+
156
212
/**
157
213
* List pull request reviews paginated. Reviews are returned in chronological order.
158
214
*
215
+ * @deprecated Use {@link #listReviews(long,long)} instead
159
216
* @param number pull request number
160
217
* @param itemsPerPage number of items per page
161
218
* @return iterator of reviews
162
219
*/
220
+ @ Deprecated
163
221
public Iterator <AsyncPage <Review >> listReviews (final int number , final int itemsPerPage ) {
164
222
// FIXME Use itemsPerPage property
165
223
final String path = String .format (PR_REVIEWS_TEMPLATE , owner , repo , number );
166
224
log .debug ("Fetching pull request reviews from " + path );
167
225
return new GithubPageIterator <>(new GithubPage <>(github , path , LIST_REVIEW_TYPE_REFERENCE ));
168
226
}
169
227
228
+ /**
229
+ * List pull request reviews paginated. Reviews are returned in chronological order.
230
+ *
231
+ * @param number pull request number
232
+ * @param itemsPerPage number of items per page
233
+ * @return iterator of reviews
234
+ */
235
+ public Iterator <AsyncPage <Review >> listReviews (final long number , final long itemsPerPage ) {
236
+ // FIXME Use itemsPerPage property
237
+ final String path = String .format (PR_REVIEWS_TEMPLATE , owner , repo , number );
238
+ log .debug ("Fetching pull request reviews from " + path );
239
+ return new GithubPageIterator <>(new GithubPage <>(github , path , LIST_REVIEW_TYPE_REFERENCE ));
240
+ }
241
+
170
242
/**
171
243
* Creates a review for a pull request.
172
244
*
245
+ * @deprecated Use {@link #createReview(long,ReviewParameters)} instead
173
246
* @param number pull request number
174
247
* @param properties properties for reviewing the PR, such as sha, body and event
175
248
* @see "https://developer.github.com/v3/pulls/reviews/#create-a-review-for-a-pull-request"
176
249
*/
250
+ @ Deprecated
177
251
public CompletableFuture <Review > createReview (
178
252
final int number , final ReviewParameters properties ) {
179
253
final String path = String .format (PR_REVIEWS_TEMPLATE , owner , repo , number );
@@ -182,25 +256,56 @@ public CompletableFuture<Review> createReview(
182
256
return github .post (path , jsonPayload , Review .class );
183
257
}
184
258
259
+ /**
260
+ * Creates a review for a pull request.
261
+ *
262
+ * @param number pull request number
263
+ * @param properties properties for reviewing the PR, such as sha, body and event
264
+ * @see "https://developer.github.com/v3/pulls/reviews/#create-a-review-for-a-pull-request"
265
+ */
266
+ public CompletableFuture <Review > createReview (
267
+ final long number , final ReviewParameters properties ) {
268
+ final String path = String .format (PR_REVIEWS_TEMPLATE , owner , repo , number );
269
+ final String jsonPayload = github .json ().toJsonUnchecked (properties );
270
+ log .debug ("Creating review for PR: " + path );
271
+ return github .post (path , jsonPayload , Review .class );
272
+ }
273
+
185
274
/**
186
275
* List pull request requested reviews.
187
276
*
277
+ * @deprecated Use {@link #listReviewRequests(long)} instead
188
278
* @param number pull request number
189
279
* @return list of reviews
190
280
*/
281
+ @ Deprecated
191
282
public CompletableFuture <ReviewRequests > listReviewRequests (final int number ) {
192
283
final String path = String .format (PR_REVIEW_REQUESTS_TEMPLATE , owner , repo , number );
193
284
log .debug ("Fetching pull request requested reviews from " + path );
194
285
return github .request (path , LIST_REVIEW_REQUEST_TYPE_REFERENCE );
195
286
}
196
287
288
+ /**
289
+ * List pull request requested reviews.
290
+ *
291
+ * @param number pull request number
292
+ * @return list of reviews
293
+ */
294
+ public CompletableFuture <ReviewRequests > listReviewRequests (final long number ) {
295
+ final String path = String .format (PR_REVIEW_REQUESTS_TEMPLATE , owner , repo , number );
296
+ log .debug ("Fetching pull request requested reviews from " + path );
297
+ return github .request (path , LIST_REVIEW_REQUEST_TYPE_REFERENCE );
298
+ }
299
+
197
300
/**
198
301
* Requests a review for a pull request.
199
302
*
303
+ * @deprecated Use {@link #requestReview(long,RequestReviewParameters)} instead
200
304
* @param number pull request number
201
305
* @param properties properties for reviewing the PR, such as reviewers and team_reviewers.
202
306
* @see "https://docs.github.com/en/rest/reference/pulls#request-reviewers-for-a-pull-request"
203
307
*/
308
+ @ Deprecated
204
309
public CompletableFuture <PullRequest > requestReview (
205
310
final int number , final RequestReviewParameters properties ) {
206
311
final String path = String .format (PR_REVIEW_REQUESTS_TEMPLATE , owner , repo , number );
@@ -209,13 +314,30 @@ public CompletableFuture<PullRequest> requestReview(
209
314
return github .post (path , jsonPayload , PullRequest .class );
210
315
}
211
316
317
+ /**
318
+ * Requests a review for a pull request.
319
+ *
320
+ * @param number pull request number
321
+ * @param properties properties for reviewing the PR, such as reviewers and team_reviewers.
322
+ * @see "https://docs.github.com/en/rest/reference/pulls#request-reviewers-for-a-pull-request"
323
+ */
324
+ public CompletableFuture <PullRequest > requestReview (
325
+ final long number , final RequestReviewParameters properties ) {
326
+ final String path = String .format (PR_REVIEW_REQUESTS_TEMPLATE , owner , repo , number );
327
+ final String jsonPayload = github .json ().toJsonUnchecked (properties );
328
+ log .debug ("Requesting reviews for PR: " + path );
329
+ return github .post (path , jsonPayload , PullRequest .class );
330
+ }
331
+
212
332
/**
213
333
* Remove a request for review for a pull request.
214
334
*
335
+ * @deprecated Use {@link #removeRequestedReview(long,RequestReviewParameters)} instead
215
336
* @param number pull request number
216
337
* @param properties properties for reviewing the PR, such as reviewers and team_reviewers.
217
338
* @see "https://docs.github.com/en/rest/reference/pulls#request-reviewers-for-a-pull-request"
218
339
*/
340
+ @ Deprecated
219
341
public CompletableFuture <Void > removeRequestedReview (
220
342
final int number , final RequestReviewParameters properties ) {
221
343
final String path = String .format (PR_REVIEW_REQUESTS_TEMPLATE , owner , repo , number );
@@ -224,20 +346,59 @@ public CompletableFuture<Void> removeRequestedReview(
224
346
return github .delete (path , jsonPayload ).thenAccept (IGNORE_RESPONSE_CONSUMER );
225
347
}
226
348
349
+ /**
350
+ * Remove a request for review for a pull request.
351
+ *
352
+ * @param number pull request number
353
+ * @param properties properties for reviewing the PR, such as reviewers and team_reviewers.
354
+ * @see "https://docs.github.com/en/rest/reference/pulls#request-reviewers-for-a-pull-request"
355
+ */
356
+ public CompletableFuture <Void > removeRequestedReview (
357
+ final long number , final RequestReviewParameters properties ) {
358
+ final String path = String .format (PR_REVIEW_REQUESTS_TEMPLATE , owner , repo , number );
359
+ final String jsonPayload = github .json ().toJsonUnchecked (properties );
360
+ log .debug ("Removing requested reviews for PR: " + path );
361
+ return github .delete (path , jsonPayload ).thenAccept (IGNORE_RESPONSE_CONSUMER );
362
+ }
363
+
227
364
/**
228
365
* Merges a pull request.
229
366
*
367
+ * @deprecated Use {@link #merge(long,MergeParameters)} instead
230
368
* @param number pull request number
231
369
* @param properties the properties on merging the PR, such as title, message and sha
232
370
* @see "https://developer.github.com/v3/pulls/#merge-a-pull-request-merge-button"
233
371
*/
372
+ @ Deprecated
234
373
public CompletableFuture <Void > merge (final int number , final MergeParameters properties ) {
235
374
final String path = String .format (PR_NUMBER_TEMPLATE + "/merge" , owner , repo , number );
236
375
final String jsonPayload = github .json ().toJsonUnchecked (properties );
237
376
log .debug ("Merging pr, running: {}" , path );
238
377
return github .put (path , jsonPayload ).thenAccept (IGNORE_RESPONSE_CONSUMER );
239
378
}
240
379
380
+ /**
381
+ * Merges a pull request.
382
+ *
383
+ * @param number pull request number
384
+ * @param properties the properties on merging the PR, such as title, message and sha
385
+ * @see "https://developer.github.com/v3/pulls/#merge-a-pull-request-merge-button"
386
+ */
387
+ public CompletableFuture <Void > merge (final long number , final MergeParameters properties ) {
388
+ final String path = String .format (PR_NUMBER_TEMPLATE + "/merge" , owner , repo , number );
389
+ final String jsonPayload = github .json ().toJsonUnchecked (properties );
390
+ log .debug ("Merging pr, running: {}" , path );
391
+ return github .put (path , jsonPayload ).thenAccept (IGNORE_RESPONSE_CONSUMER );
392
+ }
393
+
394
+ /**
395
+ * Fetches a pull request patch.
396
+ *
397
+ * @deprecated Use {@link #patch(long)} instead
398
+ * @param number pull request number
399
+ * @return reader for the patch
400
+ */
401
+ @ Deprecated
241
402
public CompletableFuture <Reader > patch (final int number ) {
242
403
final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
243
404
final Map <String , String > extraHeaders =
@@ -255,6 +416,37 @@ public CompletableFuture<Reader> patch(final int number) {
255
416
});
256
417
}
257
418
419
+ /**
420
+ * Fetches a pull request patch.
421
+ *
422
+ * @param number pull request number
423
+ * @return reader for the patch
424
+ */
425
+ public CompletableFuture <Reader > patch (final long number ) {
426
+ final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
427
+ final Map <String , String > extraHeaders =
428
+ ImmutableMap .of (HttpHeaders .ACCEPT , "application/vnd.github.patch" );
429
+ log .debug ("Fetching pull request patch from " + path );
430
+ return github
431
+ .request (path , extraHeaders )
432
+ .thenApply (
433
+ response -> {
434
+ final var body = response .body ();
435
+ if (isNull (body )) {
436
+ return Reader .nullReader ();
437
+ }
438
+ return new InputStreamReader (body );
439
+ });
440
+ }
441
+
442
+ /**
443
+ * Fetches a pull request diff.
444
+ *
445
+ * @deprecated Use {@link #diff(long)} instead
446
+ * @param number pull request number
447
+ * @return reader for the diff
448
+ */
449
+ @ Deprecated
258
450
public CompletableFuture <Reader > diff (final int number ) {
259
451
final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
260
452
final Map <String , String > extraHeaders =
@@ -272,6 +464,35 @@ public CompletableFuture<Reader> diff(final int number) {
272
464
});
273
465
}
274
466
467
+ /**
468
+ * Fetches a pull request diff.
469
+ *
470
+ * @param number pull request number
471
+ * @return reader for the diff
472
+ */
473
+ public CompletableFuture <Reader > diff (final long number ) {
474
+ final String path = String .format (PR_NUMBER_TEMPLATE , owner , repo , number );
475
+ final Map <String , String > extraHeaders =
476
+ ImmutableMap .of (HttpHeaders .ACCEPT , "application/vnd.github.diff" );
477
+ log .debug ("Fetching pull diff from " + path );
478
+ return github
479
+ .request (path , extraHeaders )
480
+ .thenApply (
481
+ response -> {
482
+ final var body = response .body ();
483
+ if (isNull (body )) {
484
+ return Reader .nullReader ();
485
+ }
486
+ return new InputStreamReader (body );
487
+ });
488
+ }
489
+
490
+ /**
491
+ * List pull requests using given parameters.
492
+ *
493
+ * @param parameterPath request parameters
494
+ * @return pull requests
495
+ */
275
496
private CompletableFuture <List <PullRequestItem >> list (final String parameterPath ) {
276
497
final String path = String .format (PR_TEMPLATE + parameterPath , owner , repo );
277
498
log .debug ("Fetching pull requests from " + path );
0 commit comments