Interface EpicLinkManager
- All Known Implementing Classes:
EpicLinkManagerImpl
public interface EpicLinkManager
Access information about epic-issue relationships from the database level.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionassociateIssuesWithEpic
(com.atlassian.jira.user.ApplicationUser user, io.atlassian.fugue.Option<com.atlassian.jira.issue.Issue> epic, Set<com.atlassian.jira.issue.Issue> issues, boolean createChangeItemAndDispatchEvent) Associate the given issues with the epic specified.disassociateEpicFromIssues
(com.atlassian.jira.user.ApplicationUser user, Set<com.atlassian.jira.issue.Issue> issues, boolean createChangeItemAndDispatchEvent) Disassociate epics associated to the given issuesdisassociateIssuesFromEpic
(com.atlassian.jira.user.ApplicationUser user, com.atlassian.jira.issue.Issue epic) Disassociate issues associated to the given epicio.atlassian.fugue.Option
<com.atlassian.jira.issue.Issue> getEpic
(com.atlassian.jira.issue.Issue child) Get the Epic of an issue, if one exists, by performing a database lookup of an issue's links.Map
<com.atlassian.jira.issue.Issue, io.atlassian.fugue.Option<com.atlassian.jira.issue.Issue>> getEpics
(Collection<com.atlassian.jira.issue.Issue> children) Get the Epic for each issue in the batch, if one exists, by performing a database lookup of issues' links.List
<com.atlassian.jira.issue.Issue> getIssuesInEpic
(com.atlassian.jira.issue.Issue epic) Get a list of all of the child epics if there are any by looking up the issue's links.
-
Field Details
-
EPIC_CHILD_FIELD_NAME
- See Also:
-
-
Method Details
-
getEpic
@Nonnull io.atlassian.fugue.Option<com.atlassian.jira.issue.Issue> getEpic(com.atlassian.jira.issue.Issue child) Get the Epic of an issue, if one exists, by performing a database lookup of an issue's links.- Parameters:
child
- the issue- Returns:
- the epic issue if the child has one
-
getEpics
@Nonnull Map<com.atlassian.jira.issue.Issue,io.atlassian.fugue.Option<com.atlassian.jira.issue.Issue>> getEpics(Collection<com.atlassian.jira.issue.Issue> children) Get the Epic for each issue in the batch, if one exists, by performing a database lookup of issues' links.- Parameters:
children
- the batch of issues- Returns:
- map from children issue to its epic, if the epic exists
-
getIssuesInEpic
Get a list of all of the child epics if there are any by looking up the issue's links.- Parameters:
epic
-- Returns:
- outcome containing a list of issues
-
associateIssuesWithEpic
@Nonnull ServiceResult associateIssuesWithEpic(com.atlassian.jira.user.ApplicationUser user, @Nonnull io.atlassian.fugue.Option<com.atlassian.jira.issue.Issue> epic, @Nonnull Set<com.atlassian.jira.issue.Issue> issues, boolean createChangeItemAndDispatchEvent) Associate the given issues with the epic specified. If the epic is not specified, it will disassociate the issues from their current epics.- Parameters:
user
- the user performing the operationepic
- the epic; specifyOption.none()
to disassociateissues
- the issuescreateChangeItemAndDispatchEvent
- whether to create a change item, triggering issue updated events and webhooks- Returns:
- the result
-
disassociateEpicFromIssues
ServiceResult disassociateEpicFromIssues(com.atlassian.jira.user.ApplicationUser user, @Nonnull Set<com.atlassian.jira.issue.Issue> issues, boolean createChangeItemAndDispatchEvent) Disassociate epics associated to the given issues -
disassociateIssuesFromEpic
ServiceResult disassociateIssuesFromEpic(com.atlassian.jira.user.ApplicationUser user, @Nonnull com.atlassian.jira.issue.Issue epic) Disassociate issues associated to the given epic
-