log.warn("IssueLinkService" + issueLinkService); IssueLinkService.SingleIssueLinkResult issueLinkResult = issueLinkService.getIssueLink(valueOf(linkId), authContext.getUser()); if (!issueLinkResult.isValid()) throw new NotFoundWebException(ErrorCollection.of(issueLinkResult.getErrorCollection())); IssueLink issueLink = issueLinkResult.getIssueLink();
if (!issueLinkResult.isValid()) throw new NotFoundWebException(ErrorCollection.of(issueLinkResult.getErrorCollection())); IssueLink issueLink = issueLinkResult.getIssueLink(); IssueService.IssueResult sourceIssueResult = issueService.getIssue(authContext.getUser(), issueLink.getSourceId()); IssueService.IssueResult destinationIssueResult = issueService.getIssue(authContext.getUser(), issueLink.getDestinationId());
@Override public SingleIssueLinkResult getIssueLink(Long issueLinkId, ApplicationUser user) { Assertions.notNull("issueLinkId", issueLinkId); IssueLink issueLink = issueLinkManager.getIssueLink(issueLinkId); if (issueLink == null) { SimpleErrorCollection simpleErrorCollection = new SimpleErrorCollection(); simpleErrorCollection.addErrorMessage(beanFactory.getInstance(user).getText("rest.issue.link.not.found", issueLinkId.toString())); return new SingleIssueLinkResult(simpleErrorCollection, null); } MutableIssue sourceIssue = issueManager.getIssueObject(issueLink.getSourceId()); ErrorCollection sourceIssueErrors = validateIssuePermission(user, sourceIssue, Permissions.BROWSE); MutableIssue destinationIssue = issueManager.getIssueObject(issueLink.getDestinationId()); ErrorCollection destinationIssueErrors = validateIssuePermission(user, destinationIssue, Permissions.BROWSE); if (sourceIssueErrors.hasAnyErrors() || destinationIssueErrors.hasAnyErrors()) { sourceIssueErrors.getErrors().putAll(destinationIssueErrors.getErrors()); sourceIssueErrors.getErrorMessages().addAll(destinationIssueErrors.getErrorMessages()); return new SingleIssueLinkResult(sourceIssueErrors, null); } return new SingleIssueLinkResult(new SimpleErrorCollection(), issueLink); }