diff --git a/src/main/java/org/gitlab4j/api/MergeRequestApi.java b/src/main/java/org/gitlab4j/api/MergeRequestApi.java index 1790fd341a2b9008ce0c2aed84553376dbe88eac..fd3a4c68136f804d9ae32754cceba415103d8f9b 100644 --- a/src/main/java/org/gitlab4j/api/MergeRequestApi.java +++ b/src/main/java/org/gitlab4j/api/MergeRequestApi.java @@ -85,20 +85,22 @@ public class MergeRequestApi extends AbstractApi { * * @param filter a MergeRequestFilter instance with the filter settings * @param itemsPerPage the number of MergeRequest instances that will be fetched per page - * @return all merge requests for the specified project matching the filter + * @return all merge requests for the specified project/group matching the filter * @throws GitLabApiException if any exception occurs */ public Pager getMergeRequests(MergeRequestFilter filter, int itemsPerPage) throws GitLabApiException { MultivaluedMap queryParams = (filter != null ? filter.getQueryParams().asMap() : null); - if (filter != null && (filter.getProjectId() != null && filter.getProjectId().intValue() > 0) || - (filter.getIids() != null && filter.getIids().size() > 0)) { + if (filter != null && ((filter.getProjectId() != null && filter.getProjectId().intValue() > 0) || + (filter.getIids() != null && filter.getIids().size() > 0))) { if (filter.getProjectId() == null || filter.getProjectId().intValue() == 0) { throw new RuntimeException("project ID cannot be null or 0"); } return (new Pager(this, MergeRequest.class, itemsPerPage, queryParams, "projects", filter.getProjectId(), "merge_requests")); + } else if (filter != null && filter.getGroupId() != null && filter.getGroupId().intValue() > 0) { + return (new Pager(this, MergeRequest.class, itemsPerPage, queryParams, "groups", filter.getGroupId(), "merge_requests")); } else { return (new Pager(this, MergeRequest.class, itemsPerPage, queryParams, "merge_requests")); } diff --git a/src/main/java/org/gitlab4j/api/models/MergeRequestFilter.java b/src/main/java/org/gitlab4j/api/models/MergeRequestFilter.java index 79b9c7c2881783867179e97ded22fe21c549baf3..ddc9700ce9bd2bc338cbf6988356302f3b142346 100644 --- a/src/main/java/org/gitlab4j/api/models/MergeRequestFilter.java +++ b/src/main/java/org/gitlab4j/api/models/MergeRequestFilter.java @@ -22,6 +22,7 @@ import com.fasterxml.jackson.annotation.JsonIgnore; public class MergeRequestFilter { private Long projectId; + private Long groupId; private List iids; private MergeRequestState state; private MergeRequestOrderBy orderBy; @@ -315,6 +316,19 @@ public class MergeRequestFilter { this.wip = wip; } + public Long getGroupId() { + return groupId; + } + + public void setGroupId(Long groupId) { + this.groupId = groupId; + } + + public MergeRequestFilter withGroupId(Long groupId) { + this.groupId = groupId; + return (this); + } + public MergeRequestFilter withWip(Boolean wip) { this.wip = wip; return (this);