Return early from composed Converter if initial conversion step returned null
See gh-23379
This commit is contained in:
@@ -57,8 +57,11 @@ public interface Converter<S, T> {
|
|||||||
* @since 5.3
|
* @since 5.3
|
||||||
*/
|
*/
|
||||||
default <U> Converter<S, U> andThen(Converter<? super T, ? extends U> after) {
|
default <U> Converter<S, U> andThen(Converter<? super T, ? extends U> after) {
|
||||||
Assert.notNull(after, "after must not be null");
|
Assert.notNull(after, "After Converter must not be null");
|
||||||
return (S s) -> after.convert(convert(s));
|
return (S s) -> {
|
||||||
|
T initialResult = convert(s);
|
||||||
|
return (initialResult != null ? after.convert(initialResult) : null);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user