@Override public AddIssueLinkValidationResult validateAddIssueLinks(ApplicationUser user, Issue issue, String linkName, Collection<String> linkKeys) { IssueLinkType linkType = matchToIssueLinkType(linkName); if (null == linkType) { ErrorCollection errors = new SimpleErrorCollection(); errors.addErrorMessage(beanFactory.getInstance(user).getText("issuelinking.service.error.invalid.link.name", linkName)); return new AddIssueLinkValidationResult(user, errors, null, null, null, null); } Direction direction = linkName.equals(linkType.getInward()) ? Direction.IN : Direction.OUT; return validateAddIssueLinks(user, issue, linkType, direction, linkKeys, true); }
private AddIssueLinkValidationResult validateAddIssueLinks(ApplicationUser user, Issue issue, IssueLinkType linkType, Direction direction, Collection<String> linkKeys, boolean excludeSystemLinks) { Assertions.notNull("issue", issue); Assertions.notNull("linkKeys", linkKeys); ErrorCollection errorCollection = validateIssuePermission(user, issue, Permissions.LINK_ISSUE); if (!errorCollection.hasAnyErrors()) { validateLinkInput(user, errorCollection, issue, linkType, linkKeys, excludeSystemLinks); } return new AddIssueLinkValidationResult(user, errorCollection, issue, linkType, direction, linkKeys); }
@Override public AddIssueLinkValidationResult validateAddIssueLinks(ApplicationUser user, Issue issue, Long issueLinkTypeId, Direction direction, Collection<String> linkKeys, boolean excludeSystemLinks) { IssueLinkType linkType = issueLinkTypeManager.getIssueLinkType(issueLinkTypeId); if (null == linkType) { ErrorCollection errors = new SimpleErrorCollection(); errors.addErrorMessage(beanFactory.getInstance(user).getText("issuelinking.service.error.invalid.link.id", issueLinkTypeId)); return new AddIssueLinkValidationResult(user, errors, null, null, null, null); } return validateAddIssueLinks(user, issue, linkType, direction, linkKeys, excludeSystemLinks); }