package org.opencustomer.util.configuration;
import java.util.List;
import org.opencustomer.db.vo.system.ConfigurationVO;
public final class ConfigurationUtil {
private ConfigurationUtil() {
}
public static String getStringValue(ConfigurationKey key, List<ConfigurationVO> configurations) {
ConfigurationVO vo = getConfiguration(key, configurations);
if(vo.getValue() == null)
if(key.getDefaultValue() == null)
return null;
else
return (String)key.getDefaultValue();
else
return vo.getValue();
}
public static int getIntValue(ConfigurationKey key, List<ConfigurationVO> configurations) {
ConfigurationVO vo = getConfiguration(key, configurations);
if(vo.getValue() == null) {
if(key.getDefaultValue() == null)
return 0;
else
return (Integer)key.getDefaultValue();
} else
return Integer.parseInt(vo.getValue());
}
public static boolean getBooleanValue(ConfigurationKey key, List<ConfigurationVO> configurations) {
ConfigurationVO vo = getConfiguration(key, configurations);
if(vo.getValue() == null) {
if(key.getDefaultValue() == null)
return false;
else
return (Boolean)key.getDefaultValue();
} else
return Boolean.parseBoolean(vo.getValue());
}
public static ConfigurationVO getConfiguration(ConfigurationKey key, List<ConfigurationVO> configurations) {
ConfigurationVO configuration = null;
for(ConfigurationVO vo : configurations) {
if(key.toString().equals(vo.getKey())) {
configuration = vo;
}
}
if(configuration == null) {
configuration = new ConfigurationVO();
configuration.setKey(key.toString());
if(key.getDefaultValue() != null)
configuration.setValue(String.valueOf(key.getDefaultValue()));
configurations.add(configuration);
}
return configuration;
}
}