Skip to content

Commit

Permalink
Merge branch 'main' into 6.x
Browse files Browse the repository at this point in the history
  • Loading branch information
jmini committed Jun 14, 2023
2 parents ac507c2 + 7599f28 commit e19ea7f
Showing 1 changed file with 36 additions and 4 deletions.
40 changes: 36 additions & 4 deletions src/main/java/org/gitlab4j/api/JobApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -139,9 +139,22 @@ public Stream<Job> getJobsStream(Object projectIdOrPath, JobScope scope) throws
* @throws GitLabApiException if any exception occurs during execution
*/
public List<Job> getJobsForPipeline(Object projectIdOrPath, long pipelineId) throws GitLabApiException {
Response response = get(Response.Status.OK, getDefaultPerPageParam(),
"projects", getProjectIdOrPath(projectIdOrPath), "pipelines", pipelineId, "jobs");
return (response.readEntity(new GenericType<List<Job>>() {}));
return getJobsForPipeline(projectIdOrPath, pipelineId, (Boolean) null);
}

/**
* Get a list of jobs in a pipeline.
*
* <pre><code>GitLab Endpoint: GET /projects/:id/pipelines/:pipeline_id/jobs</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path to get the pipelines for
* @param pipelineId the pipeline ID to get the list of jobs for
* @param includeRetried Include retried jobs in the response
* @return a list containing the jobs for the specified project ID and pipeline ID
* @throws GitLabApiException if any exception occurs during execution
*/
public List<Job> getJobsForPipeline(Object projectIdOrPath, long pipelineId, Boolean includeRetried) throws GitLabApiException {
return getJobsForPipeline(projectIdOrPath, pipelineId, null, includeRetried);
}

/**
Expand All @@ -156,7 +169,26 @@ public List<Job> getJobsForPipeline(Object projectIdOrPath, long pipelineId) thr
* @throws GitLabApiException if any exception occurs during execution
*/
public List<Job> getJobsForPipeline(Object projectIdOrPath, long pipelineId, JobScope scope) throws GitLabApiException {
GitLabApiForm formData = new GitLabApiForm().withParam("scope", scope).withParam(PER_PAGE_PARAM, getDefaultPerPage());
return getJobsForPipeline(projectIdOrPath, pipelineId, scope, false);
}

/**
* Get a list of jobs in a pipeline.
*
* <pre><code>GitLab Endpoint: GET /projects/:id/pipelines/:pipeline_id/jobs</code></pre>
*
* @param projectIdOrPath id, path of the project, or a Project instance holding the project ID or path to get the pipelines for
* @param pipelineId the pipeline ID to get the list of jobs for
* @param scope the scope of jobs, one of: CREATED, PENDING, RUNNING, FAILED, SUCCESS, CANCELED, SKIPPED, MANUAL
* @param includeRetried Include retried jobs in the response
* @return a list containing the jobs for the specified project ID and pipeline ID
* @throws GitLabApiException if any exception occurs during execution
*/
public List<Job> getJobsForPipeline(Object projectIdOrPath, long pipelineId, JobScope scope, Boolean includeRetried) throws GitLabApiException {
GitLabApiForm formData = new GitLabApiForm()
.withParam("scope", scope)
.withParam("include_retried", includeRetried)
.withParam(PER_PAGE_PARAM, getDefaultPerPage());
Response response = get(Response.Status.OK, formData.asMap(), "projects", getProjectIdOrPath(projectIdOrPath), "pipelines", pipelineId, "jobs");
return (response.readEntity(new GenericType<List<Job>>() {}));
}
Expand Down

0 comments on commit e19ea7f

Please sign in to comment.