} else if (BigDecimal.class.equals(type)) {
return type.cast(convertedValue);
} else if (Short.class.equals(type) || short.class.equals(type)) {
return type.cast(convertedValue.shortValue());
} else if (Byte.class.equals(type) || byte.class.equals(type)) {
return type.cast(convertedValue.byteValue());
}
} else if(Enum.class.isAssignableFrom(type)) {
return type.cast(Enum.valueOf((Class)type, value));
} else if(String.class.equals(type)) {
return type.cast(value);