public class DefaultIssueLinkService extends Object implements IssueLinkService
IssueLinkService.AddIssueLinkValidationResult, IssueLinkService.DeleteIssueLinkValidationResult, IssueLinkService.IssueLinkResult, IssueLinkService.IssueLinkValidationResult, IssueLinkService.SingleIssueLinkResult
Constructor and Description |
---|
DefaultIssueLinkService(IssueLinkTypeManager issueLinkTypeManager,
IssueManager issueManager,
PermissionManager permissionManager,
I18nHelper.BeanFactory beanFactory,
IssueLinkManager issueLinkManager,
UserHistoryManager userHistoryManager) |
Modifier and Type | Method and Description |
---|---|
void |
addIssueLinks(ApplicationUser user,
IssueLinkService.AddIssueLinkValidationResult result)
Adds the issue link to the issue specified by the validation result.
|
void |
delete(IssueLinkService.DeleteIssueLinkValidationResult validationResult)
Deletes the issue link with the given id from the JIRA datastore, if the current user has permission to do so.
|
IssueLinkService.SingleIssueLinkResult |
getIssueLink(Long issueLinkId,
ApplicationUser user)
Returns the issue link for the given id.
|
IssueLink |
getIssueLink(Long sourceId,
Long destinationId,
Long issueLinkTypeId)
Returns the issue link or null if not found.
|
IssueLinkService.IssueLinkResult |
getIssueLinks(ApplicationUser user,
Issue issue)
Returns the issue links that the specified user can see.
|
IssueLinkService.IssueLinkResult |
getIssueLinks(ApplicationUser user,
Issue issue,
boolean excludeSystemLinks) |
Collection<IssueLinkType> |
getIssueLinkTypes() |
IssueLinkService.AddIssueLinkValidationResult |
validateAddIssueLinks(ApplicationUser user,
Issue issue,
Long issueLinkTypeId,
Direction direction,
Collection<String> linkKeys,
boolean excludeSystemLinks) |
IssueLinkService.AddIssueLinkValidationResult |
validateAddIssueLinks(ApplicationUser user,
Issue issue,
String linkName,
Collection<String> linkKeys)
Validates that the user provided can add the link provided for a particular issue.
|
IssueLinkService.DeleteIssueLinkValidationResult |
validateDelete(ApplicationUser user,
Issue issue,
IssueLink issueLink)
Validates parameters and checks permissions, and if all checks pass it will create a
IssueLinkService.DeleteIssueLinkValidationResult that can be passed to the
IssueLinkService.delete(DeleteIssueLinkValidationResult) method. |
public DefaultIssueLinkService(IssueLinkTypeManager issueLinkTypeManager, IssueManager issueManager, PermissionManager permissionManager, I18nHelper.BeanFactory beanFactory, IssueLinkManager issueLinkManager, UserHistoryManager userHistoryManager)
public Collection<IssueLinkType> getIssueLinkTypes()
getIssueLinkTypes
in interface IssueLinkService
public IssueLink getIssueLink(Long sourceId, Long destinationId, Long issueLinkTypeId)
IssueLinkService
getIssueLink
in interface IssueLinkService
sourceId
- source issue id of the linkdestinationId
- destination issue id of the linkissueLinkTypeId
- link type id of the linkpublic IssueLinkService.SingleIssueLinkResult getIssueLink(Long issueLinkId, ApplicationUser user)
IssueLinkService
getIssueLink
in interface IssueLinkService
issueLinkId
- issue link id.user
- The user performing the operationpublic IssueLinkService.IssueLinkResult getIssueLinks(ApplicationUser user, Issue issue)
IssueLinkService
getIssueLinks
in interface IssueLinkService
user
- The user performing the operationissue
- The issue that links will retrieved onpublic IssueLinkService.IssueLinkResult getIssueLinks(ApplicationUser user, Issue issue, boolean excludeSystemLinks)
getIssueLinks
in interface IssueLinkService
user
- The user performing the operationissue
- The issue that links will retrieved onexcludeSystemLinks
- whether or not to exclude system links#getIssueLinks(com.atlassian.crowd.embedded.api.User, com.atlassian.jira.issue.Issue)
public IssueLinkService.AddIssueLinkValidationResult validateAddIssueLinks(ApplicationUser user, Issue issue, String linkName, Collection<String> linkKeys)
IssueLinkService
Only user-created (i.e. non-system) links are allowed.
validateAddIssueLinks
in interface IssueLinkService
user
- The user performing the operationissue
- The issue that links will be set onlinkName
- The actual link name as strings to set on the issuelinkKeys
- The collection of issue keys to link againstpublic IssueLinkService.AddIssueLinkValidationResult validateAddIssueLinks(ApplicationUser user, Issue issue, Long issueLinkTypeId, Direction direction, Collection<String> linkKeys, boolean excludeSystemLinks)
validateAddIssueLinks
in interface IssueLinkService
user
- The user performing the operationissue
- The issue that links will be set onissueLinkTypeId
- The actual link id to set on the issuedirection
- which direction we are linking inlinkKeys
- The collection of issue keys to link againstexcludeSystemLinks
- whether or not system links are okaypublic void addIssueLinks(ApplicationUser user, IssueLinkService.AddIssueLinkValidationResult result)
IssueLinkService
addIssueLinks
in interface IssueLinkService
user
- The user performing the operationresult
- The validation result obtained via #validateAddIssueLinks(com.atlassian.crowd.embedded.api.User, com.atlassian.jira.issue.Issue, String, java.util.Collection)
public IssueLinkService.DeleteIssueLinkValidationResult validateDelete(ApplicationUser user, Issue issue, IssueLink issueLink)
IssueLinkService
IssueLinkService.DeleteIssueLinkValidationResult
that can be passed to the
IssueLinkService.delete(DeleteIssueLinkValidationResult)
method.validateDelete
in interface IssueLinkService
user
- who the permission checks will be run against (can be null, indicating an anonymous user)issue
- issue the link is being deleted fromissueLink
- issue link to be deletedpublic void delete(IssueLinkService.DeleteIssueLinkValidationResult validationResult)
IssueLinkService
delete
in interface IssueLinkService
validationResult
- contains the remote issue link id to delete. This should have been created by the
#validateDelete(com.atlassian.crowd.embedded.api.User, com.atlassian.jira.issue.Issue, com.atlassian.jira.issue.link.IssueLink)
method. The result must have ServiceResult.isValid()
return true. If false this
method will throw an IllegalStateException.Copyright © 2002-2015 Atlassian. All Rights Reserved.