Search in sources :

Example 1 with LanguageLoader

use of org.cubeengine.i18n.language.LanguageLoader in project core by CubeEngine.

the class I18n method enable.

public void enable() {
    LanguageLoader languageLoader = service.getLanguageLoader();
    Asset langs = getAssetManager().getAsset(plugin, "languages/languages.yml").get();
    try {
        List<URL> urls = new ArrayList<>();
        for (String lang : langs.readLines()) {
            Optional<Asset> langAsset = getAssetManager().getAsset(plugin, "languages/" + lang + ".yml");
            if (langAsset.isPresent()) {
                urls.add(langAsset.get().getUrl());
            } else {
                log.warn("Could not find language definition for: " + lang);
            }
        }
        if (urls.size() != 0) {
            log.info("Loading {} language definitions", urls.size());
        }
        ((I18nLanguageLoader) languageLoader).loadLanguages(urls);
    } catch (IOException e) {
        throw new IllegalStateException(e);
    }
}
Also used : LanguageLoader(org.cubeengine.i18n.language.LanguageLoader) ArrayList(java.util.ArrayList) Asset(org.spongepowered.api.asset.Asset) IOException(java.io.IOException) URL(java.net.URL)

Aggregations

IOException (java.io.IOException)1 URL (java.net.URL)1 ArrayList (java.util.ArrayList)1 LanguageLoader (org.cubeengine.i18n.language.LanguageLoader)1 Asset (org.spongepowered.api.asset.Asset)1