public Optional<String> getCurrentVersion(Proxy proxy) throws IOException {
    final String requestUrl = buildRequestUrl();
    LOGGER.debug("Will use URL: {}", requestUrl);
    URL url = new URL(requestUrl);
    String page = IOUtils.toString(url.openConnection(proxy).getInputStream(), StandardCharsets.UTF_8);
    LOGGER.debug("Response from version server is:\n{}", page);
    VersionInformationBean versionInformation = null;
    try {
      versionInformation = JSON.parseObject(page, VersionInformationBean.class);
    } catch (JSONException e) {
      LOGGER.error("Cannot parse version info: '" + page + "'");
    }
    String version = Optional.ofNullable(versionInformation).map(VersionInformationBean::getCurrentVersion).map(VersionBean::toString).orElse(null);
    final Optional<String> s = validateResponse(version);
    LOGGER.info("Current version is: {}", s);
    return s;
  }
Check latest released version.

@return Latest released version
@throws IOException
olv-core/src/main/java/pl/otros/logview/updater/VersionUtil.java