in core/src/main/java/org/apache/ftpserver/message/impl/DefaultMessageResource.java [98:151]
private PropertiesPair createPropertiesPair(String lang, File customMessageDirectory) {
PropertiesPair pair = new PropertiesPair();
// load default resource
String defaultResourceName;
if (lang == null) {
defaultResourceName = RESOURCE_PATH + "FtpStatus.properties";
} else {
defaultResourceName = RESOURCE_PATH + "FtpStatus_" + lang
+ ".properties";
}
InputStream in = null;
try {
in = getClass().getClassLoader().getResourceAsStream(
defaultResourceName);
if (in != null) {
try {
pair.defaultProperties.load(in);
} catch (IOException e) {
throw new FtpServerConfigurationException(
"Failed to load messages from \"" + defaultResourceName + "\", file not found in classpath");
}
} else {
throw new FtpServerConfigurationException(
"Failed to load messages from \"" + defaultResourceName + "\", file not found in classpath");
}
} finally {
IoUtils.close(in);
}
// load custom resource
File resourceFile = null;
if (lang == null) {
resourceFile = new File(customMessageDirectory, "FtpStatus.gen");
} else {
resourceFile = new File(customMessageDirectory, "FtpStatus_" + lang
+ ".gen");
}
in = null;
try {
if (resourceFile.exists()) {
in = new FileInputStream(resourceFile);
pair.customProperties.load(in);
}
} catch (Exception ex) {
LOG.warn("MessageResourceImpl.createPropertiesPair()", ex);
throw new FtpServerConfigurationException(
"MessageResourceImpl.createPropertiesPair()", ex);
} finally {
IoUtils.close(in);
}
return pair;
}