Polishing

This commit is contained in:
Juergen Hoeller
2014-09-17 19:10:33 +02:00
parent 3a1f7b6d14
commit e819999c08
15 changed files with 172 additions and 147 deletions

View File

@@ -194,7 +194,7 @@ public class GenericConversionService implements ConfigurableConversionService {
}
// subclassing hooks
// Protected template methods
/**
* Template method to convert a null source.

View File

@@ -57,11 +57,13 @@ import static org.junit.Assert.*;
* @author Keith Donald
* @author Juergen Hoeller
* @author Phillip Webb
* @author David Haraburda
*/
public class GenericConversionServiceTests {
private GenericConversionService conversionService = new GenericConversionService();
@Test
public void canConvert() {
assertFalse(conversionService.canConvert(String.class, Integer.class));
@@ -749,6 +751,13 @@ public class GenericConversionServiceTests {
assertEquals("A", result);
}
@Test
public void testSubclassOfEnumToString() throws Exception {
conversionService.addConverter(new EnumToStringConverter(conversionService));
String result = conversionService.convert(EnumWithSubclass.FIRST, String.class);
assertEquals("FIRST", result);
}
@Test
public void testEnumWithInterfaceToStringConversion() {
// SPR-9692
@@ -846,6 +855,7 @@ public class GenericConversionServiceTests {
@ExampleAnnotation
public String annotatedString;
@Retention(RetentionPolicy.RUNTIME)
public static @interface ExampleAnnotation {
}
@@ -888,8 +898,7 @@ public class GenericConversionServiceTests {
}
@Override
public Object convert(Object source, TypeDescriptor sourceType,
TypeDescriptor targetType) {
public Object convert(Object source, TypeDescriptor sourceType, TypeDescriptor targetType) {
return null;
}
@@ -932,6 +941,7 @@ public class GenericConversionServiceTests {
String getCode();
}
public static enum MyEnum implements MyEnumInterface {
A {
@@ -943,6 +953,17 @@ public class GenericConversionServiceTests {
}
public enum EnumWithSubclass {
FIRST {
@Override
public String toString() {
return "1st";
}
}
}
public static class MyStringToRawCollectionConverter implements Converter<String, Collection> {
@Override
@@ -951,6 +972,7 @@ public class GenericConversionServiceTests {
}
}
public static class MyStringToGenericCollectionConverter implements Converter<String, Collection<?>> {
@Override
@@ -959,6 +981,7 @@ public class GenericConversionServiceTests {
}
}
private static class MyEnumInterfaceToStringConverter<T extends MyEnumInterface> implements Converter<T, String> {
@Override
@@ -967,6 +990,7 @@ public class GenericConversionServiceTests {
}
}
public static class MyStringToStringCollectionConverter implements Converter<String, Collection<String>> {
@Override
@@ -975,6 +999,7 @@ public class GenericConversionServiceTests {
}
}
public static class MyStringToIntegerCollectionConverter implements Converter<String, Collection<Integer>> {
@Override