private void closeIssues()

in src/main/java/org/apache/sling/cli/impl/jira/VersionClient.java [209:230]


    private void closeIssues(List<Issue> issues) throws Exception {
        List<Promise<Issue>> closedIssues = new ArrayList<>();
        for (Issue issue : issues) {
            if (!"Closed".equals(issue.getStatus())) {
                closedIssues.add(getCloseTransition(issue).then(closeTransition -> closeIssue(issue, closeTransition.getValue())));
            }
        }
        Promise<List<Issue>> closedFixedIssues = promiseFactory.all(closedIssues);
        Throwable failed = closedFixedIssues.getFailure();
        if (failed != null) {
            if (failed instanceof FailedPromisesException) {
                FailedPromisesException failedPromisesException = (FailedPromisesException) failed;
                StringBuilder failureMessages = new StringBuilder();
                for (Promise<?> promise : failedPromisesException.getFailedPromises()) {
                    failureMessages.append(promise.getFailure().getMessage()).append("\n");
                }
                throw new IOException("Unable to close the following issues:\n" + failureMessages.toString());
            } else {
                throw new Exception(failed);
            }
        }
    }