package ddth.dasp.common.config.impl; import ddth.dasp.common.config.IConfigDao; public abstract class AbstractConfigDao implements IConfigDao { /** * {@inheritDoc} */ @Override public Boolean getConfigAsBoolean(String module, String key) { Object value = getConfig(module, key); if (value == null) { return null; } if (value instanceof Boolean) { return (Boolean) value; } String valueStr = value.toString(); if ("Y".equalsIgnoreCase(valueStr) || "T".equalsIgnoreCase(valueStr) || "1".equalsIgnoreCase(valueStr)) { return Boolean.TRUE; } if ("N".equalsIgnoreCase(valueStr) || "F".equalsIgnoreCase(valueStr) || "0".equalsIgnoreCase(valueStr)) { return Boolean.FALSE; } try { return Boolean.parseBoolean(valueStr); } catch (Exception e) { return null; } } /** * {@inheritDoc} */ @Override public Double getConfigAsDouble(String module, String key) { Object value = getConfig(module, key); if (value == null) { return null; } if (value instanceof Number) { return ((Number) value).doubleValue(); } String valueStr = value.toString(); try { return Double.parseDouble(valueStr); } catch (Exception e) { return null; } } /** * {@inheritDoc} */ @Override public Float getConfigAsFloat(String module, String key) { Object value = getConfig(module, key); if (value == null) { return null; } if (value instanceof Number) { return ((Number) value).floatValue(); } String valueStr = value.toString(); try { return Float.parseFloat(valueStr); } catch (Exception e) { return null; } } /** * {@inheritDoc} */ @Override public Integer getConfigAsInteger(String module, String key) { Object value = getConfig(module, key); if (value == null) { return null; } if (value instanceof Number) { return ((Number) value).intValue(); } String valueStr = value.toString(); try { return Integer.parseInt(valueStr); } catch (Exception e) { return null; } } /** * {@inheritDoc} */ @Override public Long getConfigAsLong(String module, String key) { Object value = getConfig(module, key); if (value == null) { return null; } if (value instanceof Number) { return ((Number) value).longValue(); } String valueStr = value.toString(); try { return Long.parseLong(valueStr); } catch (Exception e) { return null; } } /** * {@inheritDoc} */ @Override public String getConfigAsString(String module, String key) { Object value = getConfig(module, key); return value != null ? value.toString() : null; } }