Refactor `PropertyMapper` so that it no longer calls adapter or predicate methods by default when the source value is `null`. This effectively makes all default calls the same as using `alwaysWhenNotNull` in the previous generation of the code. For the limited times when you do need to deal with `null` values, the new `always()` method can be used. For example, map.from(source::method).to(destination::method); Will not call `destination.method(...)` if `source.method()` returns `null`. Where as: map.from(source::method).always().to(destination::method); Will call `destination.method(null)` if `source.method()` returns `null`. This update provides clearer semantics for the API and allows for better JSpecify nullability annotations. It has also simplified much of our existing property mapper code. Closes gh-47024 Co-authored-by: Moritz Halbritter <moritz.halbritter@broadcom.com> |
||
---|---|---|
.. | ||
main | ||
test | ||
testFixtures |