@Override public void deleteByGlobalId(final ApplicationUser user, final DeleteByGlobalIdValidationResult validationResult) { if (validationResult == null) { throw new IllegalArgumentException("You cannot delete a remote link with a null validation result."); } if (!validationResult.isValid()) { throw new IllegalStateException("You cannot delete a remote link with an invalid validation result."); } final Issue issue = validationResult.getIssue(); if (issue == null) { throw new IllegalArgumentException("You cannot delete with a null issue."); } final String globalId = validationResult.getGlobalId(); if (globalId == null) { throw new IllegalArgumentException("You cannot delete with a null remote link global id."); } remoteIssueLinkManager.removeRemoteIssueLinkByGlobalId(issue, globalId, user); }