play.i18n.MessagesPlugin Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of framework Show documentation
Show all versions of framework Show documentation
RePlay is a fork of the Play1 framework, created by Codeborne.
package play.i18n;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import play.Play;
import play.PlayPlugin;
import play.libs.IO;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
public class MessagesPlugin extends PlayPlugin {
private static final Logger logger = LoggerFactory.getLogger(MessagesPlugin.class);
private static Long lastLoading = 0L;
private static final List includeMessageFilenames = new ArrayList<>();
@Override
public void onApplicationStart() {
includeMessageFilenames.clear();
Messages.defaults = new Properties();
File defaultMessagesFile = Play.file("conf/messages");
if (defaultMessagesFile != null && defaultMessagesFile.exists() && !defaultMessagesFile.isDirectory()) {
Messages.defaults.putAll(read(defaultMessagesFile));
}
for (String locale : Play.langs) {
Properties properties = new Properties();
File messagesFile = Play.file("conf/messages." + locale);
if (messagesFile != null && messagesFile.exists() && !messagesFile.isDirectory()) {
properties.putAll(read(messagesFile));
} else {
logger.warn("Messages file missing for locale {}", locale);
}
Messages.locales.put(locale, properties);
}
lastLoading = System.currentTimeMillis();
}
Properties read(File file) {
Properties propsFromFile = null;
if (file != null && !file.isDirectory()) {
propsFromFile = IO.readUtf8Properties(file);
// Include
Map
© 2015 - 2024 Weber Informatics LLC | Privacy Policy