Package org.gitlab4j.api
Class EpicsApi
- java.lang.Object
-
- org.gitlab4j.api.AbstractApi
-
- org.gitlab4j.api.EpicsApi
-
- All Implemented Interfaces:
Constants
public class EpicsApi extends AbstractApi
This class implements the client side API for the GitLab Epics and Epic Issues API calls. NOTE: - If a user is not a member of a group and the group is private, a GET request on that group will result to a 404 status code. - Epics are available only in Ultimate. If epics feature is not available a 403 status code will be returned.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.gitlab4j.api.Constants
Constants.ActionType, Constants.ApplicationScope, Constants.ArchiveFormat, Constants.CommitBuildState, Constants.Encoding, Constants.EpicOrderBy, Constants.GroupOrderBy, Constants.ImpersonationState, Constants.IssueOrderBy, Constants.IssueScope, Constants.IssueState, Constants.JobScope, Constants.LineType, Constants.MergeRequestOrderBy, Constants.MergeRequestScope, Constants.MergeRequestState, Constants.MilestoneState, Constants.PipelineOrderBy, Constants.PipelineScope, Constants.ProjectOrderBy, Constants.SortOrder, Constants.StateEvent, Constants.TargetType, Constants.TokenType
-
-
Field Summary
-
Fields inherited from interface org.gitlab4j.api.Constants
NEXT_PAGE_HEADER, PAGE_HEADER, PAGE_PARAM, PER_PAGE, PER_PAGE_PARAM, PREV_PAGE_HEADER, TOTAL_HEADER, TOTAL_PAGES_HEADER
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description EpicIssue
assignIssue(Object groupIdOrPath, Integer epicIid, Integer issueIid)
Creates an epic - issue association.Epic
createEpic(Object groupIdOrPath, String title, String labels, String description, Date startDate, Date endDate)
Creates a new epic.Epic
createEpic(Object groupIdOrPath, Epic epic)
Creates a new epic using the information contained in the provided Epic instance.void
deleteEpic(Object groupIdOrPath, Integer epicIid)
Deletes an epic.Epic
getEpic(Object groupIdOrPath, Integer epicIid)
Get a single epic for the specified group.List<Epic>
getEpicIssues(Object groupIdOrPath, Integer epicIid)
Gets all issues that are assigned to an epic and the authenticated user has access to.Pager<Epic>
getEpicIssues(Object groupIdOrPath, Integer epicIid, int itemsPerPage)
Get a Pager of all issues that are assigned to an epic and the authenticated user has access to.List<Epic>
getEpicIssues(Object groupIdOrPath, Integer epicIid, int page, int perPage)
Gets all issues that are assigned to an epic and the authenticated user has access to using the specified page and per page setting.Stream<Epic>
getEpicIssuesStream(Object groupIdOrPath, Integer epicIid)
Gets all issues that are assigned to an epic and the authenticated user has access to as a Stream.List<Epic>
getEpics(Object groupIdOrPath)
Gets all epics of the requested group and its subgroups.Pager<Epic>
getEpics(Object groupIdOrPath, int itemsPerPage)
Get a Pager of all epics of the requested group and its subgroups.List<Epic>
getEpics(Object groupIdOrPath, int page, int perPage)
Gets all epics of the requested group and its subgroups using the specified page and per page setting.List<Epic>
getEpics(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search)
Gets all epics of the requested group and its subgroups.Pager<Epic>
getEpics(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search, int itemsPerPage)
Get a Pager of all epics of the requested group and its subgroups.List<Epic>
getEpics(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search, int page, int perPage)
Gets all epics of the requested group and its subgroups using the specified page and per page setting.Stream<Epic>
getEpicsStream(Object groupIdOrPath)
Gets all epics of the requested group and its subgroups as a Stream.Stream<Epic>
getEpicsStream(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search)
Gets all epics of the requested group and its subgroups as a Stream.Optional<Epic>
getOptionalEpic(Object groupIdOrPath, Integer epicIid)
Get an Optional instance with the value for the specific Epic.EpicIssue
removeIssue(Object groupIdOrPath, Integer epicIid, Integer issueIid)
Remove an epic - issue association.Epic
updateEpic(Object groupIdOrPath, Integer epicIid, String title, String labels, String description, Date startDate, Date endDate)
Updates an existing epic.Epic
updateEpic(Object groupIdOrPath, Integer epicIid, Epic epic)
Updates an epic using the information contained in the provided Epic instance.EpicIssue
updateIssue(Object groupIdOrPath, Integer epicIid, Integer issueIid, Integer moveBeforeId, Integer moveAfterId)
Updates an epic - issue association.-
Methods inherited from class org.gitlab4j.api.AbstractApi
addFormParam, addFormParam, delete, delete, get, get, getApiClient, getApiVersion, getDefaultPerPage, getDefaultPerPageParam, getDefaultPerPageParam, getGroupIdOrPath, getPageQueryParams, getPageQueryParams, getPerPageQueryParam, getProjectIdOrPath, getUserIdOrUsername, getWithAccepts, handle, head, isApiVersion, post, post, post, post, post, put, put, putUpload, putUpload, putWithFormData, upload, upload, upload, urlEncode, validate
-
-
-
-
Constructor Detail
-
EpicsApi
public EpicsApi(GitLabApi gitLabApi)
-
-
Method Detail
-
getEpics
public List<Epic> getEpics(Object groupIdOrPath) throws GitLabApiException
Gets all epics of the requested group and its subgroups.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or path- Returns:
- a list of all epics of the requested group and its subgroups
- Throws:
GitLabApiException
- if any exception occurs
-
getEpics
public List<Epic> getEpics(Object groupIdOrPath, int page, int perPage) throws GitLabApiException
Gets all epics of the requested group and its subgroups using the specified page and per page setting.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathpage
- the page to getperPage
- the number of issues per page- Returns:
- a list of all epics of the requested group and its subgroups in the specified range
- Throws:
GitLabApiException
- if any exception occurs
-
getEpics
public Pager<Epic> getEpics(Object groupIdOrPath, int itemsPerPage) throws GitLabApiException
Get a Pager of all epics of the requested group and its subgroups.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathitemsPerPage
- the number of issues per page- Returns:
- the Pager of all epics of the requested group and its subgroups
- Throws:
GitLabApiException
- if any exception occurs
-
getEpicsStream
public Stream<Epic> getEpicsStream(Object groupIdOrPath) throws GitLabApiException
Gets all epics of the requested group and its subgroups as a Stream.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or path- Returns:
- a Stream of all epics of the requested group and its subgroups
- Throws:
GitLabApiException
- if any exception occurs
-
getEpics
public List<Epic> getEpics(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search) throws GitLabApiException
Gets all epics of the requested group and its subgroups.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathauthorId
- returns epics created by the given user idlabels
- return epics matching a comma separated list of labels names. Label names from the epic group or a parent group can be usedorderBy
- return epics ordered by CREATED_AT or UPDATED_AT. Default is CREATED_ATsortOrder
- return epics sorted in ASC or DESC order. Default is DESCsearch
- search epics against their title and description- Returns:
- a list of matching epics of the requested group and its subgroups
- Throws:
GitLabApiException
- if any exception occurs
-
getEpics
public List<Epic> getEpics(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search, int page, int perPage) throws GitLabApiException
Gets all epics of the requested group and its subgroups using the specified page and per page setting.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathauthorId
- returns epics created by the given user idlabels
- return epics matching a comma separated list of labels names Label names from the epic group or a parent group can be usedorderBy
- return epics ordered by CREATED_AT or UPDATED_AT. Default is CREATED_ATsortOrder
- return epics sorted in ASC or DESC order. Default is DESCsearch
- search epics against their title and descriptionpage
- the page to getperPage
- the number of issues per page- Returns:
- a list of matching epics of the requested group and its subgroups in the specified range
- Throws:
GitLabApiException
- if any exception occurs
-
getEpics
public Pager<Epic> getEpics(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search, int itemsPerPage) throws GitLabApiException
Get a Pager of all epics of the requested group and its subgroups.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathauthorId
- returns epics created by the given user idlabels
- return epics matching a comma separated list of labels names. Label names from the epic group or a parent group can be useditemsPerPage
- the number of issues per pageorderBy
- return epics ordered by CREATED_AT or UPDATED_AT. Default is CREATED_ATsortOrder
- return epics sorted in ASC or DESC order. Default is DESCsearch
- search epics against their title and description- Returns:
- the Pager of matching epics of the requested group and its subgroups
- Throws:
GitLabApiException
- if any exception occurs
-
getEpicsStream
public Stream<Epic> getEpicsStream(Object groupIdOrPath, Integer authorId, String labels, Constants.EpicOrderBy orderBy, Constants.SortOrder sortOrder, String search) throws GitLabApiException
Gets all epics of the requested group and its subgroups as a Stream.GitLab Endpoint: GET /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathauthorId
- returns epics created by the given user idlabels
- return epics matching a comma separated list of labels names. Label names from the epic group or a parent group can be usedorderBy
- return epics ordered by CREATED_AT or UPDATED_AT. Default is CREATED_ATsortOrder
- return epics sorted in ASC or DESC order. Default is DESCsearch
- search epics against their title and description- Returns:
- a Stream of matching epics of the requested group and its subgroups
- Throws:
GitLabApiException
- if any exception occurs
-
getEpic
public Epic getEpic(Object groupIdOrPath, Integer epicIid) throws GitLabApiException
Get a single epic for the specified group.GitLab Endpoint: GET /groups/:id/epics/:epic_iid
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to get- Returns:
- an Epic instance for the specified Epic
- Throws:
GitLabApiException
- if any exception occurs
-
getOptionalEpic
public Optional<Epic> getOptionalEpic(Object groupIdOrPath, Integer epicIid)
Get an Optional instance with the value for the specific Epic.GitLab Endpoint: GET /groups/:id/epics/:epic_iid
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to get- Returns:
- an Optional instance with the specified Epic as a value
-
createEpic
public Epic createEpic(Object groupIdOrPath, String title, String labels, String description, Date startDate, Date endDate) throws GitLabApiException
Creates a new epic.GitLab Endpoint: POST /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathtitle
- the title of the epic (required)labels
- comma separated list of labels (optional)description
- the description of the epic (optional)startDate
- the start date of the epic (optional)endDate
- the end date of the epic (optional)- Returns:
- an Epic instance containing info on the newly created epic
- Throws:
GitLabApiException
- if any exception occurs
-
createEpic
public Epic createEpic(Object groupIdOrPath, Epic epic) throws GitLabApiException
Creates a new epic using the information contained in the provided Epic instance. Only the following fields from the Epic instance are used:title - the title of the epic (required) labels - comma separated list of labels (optional) description - the description of the epic (optional) startDate - the start date of the epic (optional) endDate - the end date of the epic (optional)
GitLab Endpoint: POST /groups/:id/epics
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepic
- the Epic instance with information for the new epic- Returns:
- an Epic instance containing info on the newly created epic
- Throws:
GitLabApiException
- if any exception occurs
-
updateEpic
public Epic updateEpic(Object groupIdOrPath, Integer epicIid, String title, String labels, String description, Date startDate, Date endDate) throws GitLabApiException
Updates an existing epic.GitLab Endpoint: PUT /groups/:id/epics/:epic_iid
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to updatetitle
- the title of the epic (optional)labels
- comma separated list of labels (optional)description
- the description of the epic (optional)startDate
- the start date of the epic (optional)endDate
- the end date of the epic (optional)- Returns:
- an Epic instance containing info on the newly created epic
- Throws:
GitLabApiException
- if any exception occurs
-
updateEpic
public Epic updateEpic(Object groupIdOrPath, Integer epicIid, Epic epic) throws GitLabApiException
Updates an epic using the information contained in the provided Epic instance. Only the following fields from the Epic instance are used:title - the title of the epic (optional) labels - comma separated list of labels (optional) description - the description of the epic (optional) startDate - the start date of the epic (optional) endDate - the end date of the epic (optional)
GitLab Endpoint: PUT /groups/:id/epics/:epic_iid
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to updateepic
- the Epic instance with update information- Returns:
- an Epic instance containing info on the updated epic
- Throws:
GitLabApiException
- if any exception occurs
-
deleteEpic
public void deleteEpic(Object groupIdOrPath, Integer epicIid) throws GitLabApiException
Deletes an epic.GitLab Endpoint: DELETE /groups/:id/epics/:epic_iid
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to delete- Throws:
GitLabApiException
- if any exception occurs
-
getEpicIssues
public List<Epic> getEpicIssues(Object groupIdOrPath, Integer epicIid) throws GitLabApiException
Gets all issues that are assigned to an epic and the authenticated user has access to.GitLab Endpoint: GET /groups/:id/epics/:epic_iid/issues
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to get issues for- Returns:
- a list of all epic issues belonging to the specified epic
- Throws:
GitLabApiException
- if any exception occurs
-
getEpicIssues
public List<Epic> getEpicIssues(Object groupIdOrPath, Integer epicIid, int page, int perPage) throws GitLabApiException
Gets all issues that are assigned to an epic and the authenticated user has access to using the specified page and per page setting.GitLab Endpoint: GET /groups/:id/epics/:epic_iid/issues
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to get issues forpage
- the page to getperPage
- the number of issues per page- Returns:
- a list of all epic issues belonging to the specified epic in the specified range
- Throws:
GitLabApiException
- if any exception occurs
-
getEpicIssues
public Pager<Epic> getEpicIssues(Object groupIdOrPath, Integer epicIid, int itemsPerPage) throws GitLabApiException
Get a Pager of all issues that are assigned to an epic and the authenticated user has access to.GitLab Endpoint: GET /groups/:id/epics/:epic_iid/issues
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to get issues foritemsPerPage
- the number of issues per page- Returns:
- the Pager of all epic issues belonging to the specified epic
- Throws:
GitLabApiException
- if any exception occurs
-
getEpicIssuesStream
public Stream<Epic> getEpicIssuesStream(Object groupIdOrPath, Integer epicIid) throws GitLabApiException
Gets all issues that are assigned to an epic and the authenticated user has access to as a Stream.GitLab Endpoint: GET /groups/:id/epics/:epic_iid/issues
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the IID of the epic to get issues for- Returns:
- a Stream of all epic issues belonging to the specified epic
- Throws:
GitLabApiException
- if any exception occurs
-
assignIssue
public EpicIssue assignIssue(Object groupIdOrPath, Integer epicIid, Integer issueIid) throws GitLabApiException
Creates an epic - issue association. If the issue in question belongs to another epic it is unassigned from that epic.GitLab Endpoint: POST /groups/:id/epics/:epic_iid/issues/:issue_id
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the Epic IID to assign the issue toissueIid
- the issue IID of the issue to assign to the epic- Returns:
- an EpicIssue instance containing info on the newly assigned epic issue
- Throws:
GitLabApiException
- if any exception occurs
-
removeIssue
public EpicIssue removeIssue(Object groupIdOrPath, Integer epicIid, Integer issueIid) throws GitLabApiException
Remove an epic - issue association.GitLab Endpoint: DELETE /groups/:id/epics/:epic_iid/issues/:issue_id
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the Epic IID to remove the issue fromissueIid
- the issue IID of the issue to remove from the epic- Returns:
- an EpicIssue instance containing info on the removed issue
- Throws:
GitLabApiException
- if any exception occurs
-
updateIssue
public EpicIssue updateIssue(Object groupIdOrPath, Integer epicIid, Integer issueIid, Integer moveBeforeId, Integer moveAfterId) throws GitLabApiException
Updates an epic - issue association.GitLab Endpoint: PUT /groups/:id/epics/:epic_iid/issues/:issue_id
- Parameters:
groupIdOrPath
- the group ID, path of the group, or a Group instance holding the group ID or pathepicIid
- the Epic IID that the issue is assigned toissueIid
- the issue IID to updatemoveBeforeId
- the ID of the issue - epic association that should be placed before the link in the question (optional)moveAfterId
- the ID of the issue - epic association that should be placed after the link in the question (optional)- Returns:
- an EpicIssue instance containing info on the newly assigned epic issue
- Throws:
GitLabApiException
- if any exception occurs
-
-