code: @Override
    public Double convert(Object value) {
  
      if (value instanceof Number) {
        return ((Number) value).doubleValue();
      }
      else if (value instanceof String && StringUtils.containsDigits(value.toString().trim())) {
        try {
          return Double.parseDouble(value.toString().trim());
        }
        catch (NumberFormatException cause) {
          throw newConversionException(cause, "[%s] is not a valid double", value);
        }
      }
      else {
        return super.convert(value);
      }
    }
docs: Converts an {@link Object} of {@link Class type S} into an {@link Object} of {@link Class type T}.
  
  @param value {@link Object} of {@link Class type S} to convert.
  @return the converted {@link Object} of {@link Class type T}.
  @throws ConversionException if the {@link Object} cannot be converted.
  @see org.cp.elements.data.conversion.ConversionService#convert(Object, Class)
  @see #convert(Object, Class)