package org.apache.commons.beanutils.converters; import org.apache.commons.beanutils.ConversionException; import org.apache.commons.beanutils.Converter; public final class DoubleConverter implements Converter { private Object defaultValue; private boolean useDefault; public DoubleConverter() { this.defaultValue = null; this.useDefault = true; this.defaultValue = null; this.useDefault = false; } public DoubleConverter(Object defaultValue) { this.defaultValue = null; this.useDefault = true; this.defaultValue = defaultValue; this.useDefault = true; } public Object convert(Class type, Object value) { if (value == null) { if (this.useDefault) return this.defaultValue; throw new ConversionException("No value specified"); } if (value instanceof Double) return value; if (value instanceof Number) return new Double(((Number)value).doubleValue()); try { return new Double(value.toString()); } catch (Exception e) { if (this.useDefault) return this.defaultValue; throw new ConversionException(e); } } }