Interface EpicLinkManager

All Known Implementing Classes:
EpicLinkManagerImpl

public interface EpicLinkManager
Access information about epic-issue relationships from the database level.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
  • Method Summary

    Modifier and Type
    Method
    Description
    associateIssuesWithEpic(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 issues
    disassociateIssuesFromEpic(com.atlassian.jira.user.ApplicationUser user, com.atlassian.jira.issue.Issue epic)
    Disassociate issues associated to the given epic
    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.
    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

  • 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

      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.
      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 operation
      epic - the epic; specify Option.none() to disassociate
      issues - the issues
      createChangeItemAndDispatchEvent - 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