private long readLastRefreshTime() {
        Path statusFile = this.plugin.getTranslationManager().getRepositoryStatusFile();

        if (Files.exists(statusFile)) {
            try (BufferedReader reader = Files.newBufferedReader(statusFile, StandardCharsets.UTF_8)) {
                JsonObject status = GsonProvider.normal().fromJson(reader, JsonObject.class);
                if (status.has("lastRefresh")) {
                    return status.get("lastRefresh").getAsLong();
                }
            } catch (Exception e) {
                // ignore
            }
        }

        return 0L;
    }
Downloads and installs translations for the given languages.

@param languages the languages to install translations for
@param sender the sender to report progress to
@param updateStatus if the status file should be updated
common/src/main/java/me/lucko/luckperms/common/locale/TranslationRepository.java