private void updateReporter()

in src/main/java/org/apache/sling/cli/impl/release/UpdateReporterCommand.java [117:137]


    private void updateReporter(Set<Release> releases) throws IOException {
        try (CloseableHttpClient client = httpClientFactory.newClient()) {
            for (Release release : releases) {
                HttpPost post = new HttpPost("https://reporter.apache.org/addrelease.py");
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                List<NameValuePair> parameters = new ArrayList<>();
                Date now = new Date();
                parameters.add(new BasicNameValuePair("date", Long.toString(now.getTime() / 1000)));
                parameters.add(new BasicNameValuePair("committee", "sling"));
                parameters.add(new BasicNameValuePair("version", release.getFullName()));
                parameters.add(new BasicNameValuePair("xdate", simpleDateFormat.format(now)));
                post.setEntity(new UrlEncodedFormEntity(parameters, StandardCharsets.UTF_8));
                try (CloseableHttpResponse response = client.execute(post)) {
                    if (response.getStatusLine().getStatusCode() != 200) {
                        throw new IOException(String.format("The Apache Reporter System update failed for release %s. Got response code " +
                                "%s instead of 200.", release.getFullName(), response.getStatusLine().getStatusCode()));
                    }
                }
            }
        }
    }