Skip to content

Commit

Permalink
#4201 Errors repeatedly logged for minor configuration issues (#7067)
Browse files Browse the repository at this point in the history
  • Loading branch information
leventegal-she authored Nov 9, 2021
1 parent fbe6cca commit e072a55
Showing 1 changed file with 21 additions and 25 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.function.Function;
import java.util.regex.Pattern;
import java.util.stream.Collectors;

Expand Down Expand Up @@ -181,52 +182,47 @@ protected String getProperty(String name, String defaultValue) {
}
}

protected boolean getBoolean(String name, boolean defaultValue) {
private <T> T parseProperty(String propertyName, T defaultValue, Function<String, T> parse) {

try {
return Boolean.parseBoolean(getProperty(name, Boolean.toString(defaultValue)));
} catch (Exception e) {
logger.error("Could not parse boolean value of property '" + name + "': " + e.getMessage());
String prop = props.getProperty(propertyName);
if (prop == null) {
return defaultValue;
}
}

protected double getDouble(String name, double defaultValue) {

try {
return Double.parseDouble(getProperty(name, Double.toString(defaultValue)));
if (prop.isEmpty()) {
logger.debug("The property '" + propertyName + "' is set to empty value");
}

return parse.apply(prop);
} catch (Exception e) {
logger.error("Could not parse numeric value of property '" + name + "': " + e.getMessage());
logger.error("Could not parse value of property '" + propertyName + "': " + e.getMessage());
return defaultValue;
}
}

protected int getInt(String name, int defaultValue) {
protected boolean getBoolean(String name, boolean defaultValue) {
return parseProperty(name, defaultValue, Boolean::parseBoolean);
}

try {
return Integer.parseInt(getProperty(name, Integer.toString(defaultValue)));
} catch (Exception e) {
logger.error("Could not parse integer value of property '" + name + "': " + e.getMessage());
return defaultValue;
}
protected double getDouble(String name, double defaultValue) {
return parseProperty(name, defaultValue, Double::parseDouble);
}

protected long getLong(String name, int defaultValue) {
protected int getInt(String name, int defaultValue) {
return parseProperty(name, defaultValue, Integer::parseInt);
}

try {
return Long.parseLong(getProperty(name, Long.toString(defaultValue)));
} catch (Exception e) {
logger.error("Could not parse long value of property '" + name + "': " + e.getMessage());
return defaultValue;
}
protected long getLong(String name, long defaultValue) {
return parseProperty(name, defaultValue, Long::parseLong);
}

@Override
public String getCountryName() {

String countryName = getProperty(COUNTRY_NAME, "");
if (countryName.isEmpty()) {
logger.info("No country name is specified in sormas.properties.");
logger.debug("No country name is specified in sormas.properties.");
}
return new String(countryName.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8);
}
Expand Down

0 comments on commit e072a55

Please sign in to comment.