@Override public <S, T> DefaultConversionService addConverter(Class<S> sourceType, Class<T> targetType, Function<S, T> function) { ConvertiblePair pair = new ConvertiblePair(sourceType, targetType); TypeConverter<S, T> typeConverter = TypeConverter.of(sourceType, targetType, function); typeConverters.put(pair, typeConverter); converterCache.put(pair, typeConverter); return this; }
@Bean @Singleton public TypeConverter<String, Bar> stringToBarConverter() { return TypeConverter.of( String.class, Bar.class, Bar::new ); }
@Bean @Singleton public TypeConverter<String, Foo> stringToFooConverter() { return TypeConverter.of( String.class, Foo.class, Foo::new ); }