I am trying to create a custom field that counts the number of links to our external customer support system. I wrote the following off the the IssueLinkManager:
import com.atlassian.jira.component.ComponentAccessor def issueLinkManager = ComponentAccessor.getIssueLinkManager() def totalRemaining = 0 def externalLinkMatch = ~/SupportSystemName/ issueLinkManager.getIssueLinks(issue.id).each {issueLink -> if (issueLink.toString().matches(externalLinkMatch)) { totalRemaining += 1 } } return totalRemaining as Double ?: null
However nothing is returning when I do this. Does the IssueLinkManager not access external links? If not what class and method(s) should I be using?
You need a different interface:
com.atlassian.jira.issue.link.RemoteIssueLinkManager#getRemoteIssueLinksForIssue
Probably something like:
import com.atlassian.jira.component.ComponentAccessor import com.atlassian.jira.issue.link.RemoteIssueLinkManager def remoteIssueLinkManager = ComponentAccessor.getComponent(RemoteIssueLinkManager) remoteIssueLinkManager.getRemoteIssueLinksForIssue(issue).count { it.url =~ /SupportSystemName/ } ?: null
Perfect! Thank you. Yes, this interface has everything that I need. Now if I can just get the regex matching to work!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.