switched to better encapsulated convert(Object, TypeDescriptor) where possible

This commit is contained in:
Keith Donald
2011-01-07 05:57:25 +00:00
parent bb4aa9cc39
commit 0fb631348e
7 changed files with 38 additions and 30 deletions

View File

@@ -64,4 +64,10 @@ public interface ConversionService {
*/
Object convert(Object source, TypeDescriptor sourceType, TypeDescriptor targetType);
}
// 3.1 additions that encapsulate TypeDescriptor.forObject(source)
boolean canConvert(Object source, TypeDescriptor targetType);
Object convert(Object source, TypeDescriptor targetType);
}

View File

@@ -56,7 +56,7 @@ public class ConvertingPropertyEditorAdapter extends PropertyEditorSupport {
@Override
public void setAsText(String text) throws IllegalArgumentException {
setValue(this.conversionService.convert(text, TypeDescriptor.valueOf(String.class), this.targetDescriptor));
setValue(this.conversionService.convert(text, this.targetDescriptor));
}
@Override

View File

@@ -188,6 +188,14 @@ public class GenericConversionService implements ConversionService, ConverterReg
return result;
}
public boolean canConvert(Object source, TypeDescriptor targetType) {
return canConvert(TypeDescriptor.forObject(source), targetType);
}
public Object convert(Object source, TypeDescriptor targetType) {
return convert(source, TypeDescriptor.forObject(source), targetType);
}
public String toString() {
List<String> converterStrings = new ArrayList<String>();
for (Map<Class<?>, MatchableConverters> targetConverters : this.converters.values()) {