Use BindResult.orElseGet() where beneficial

See gh-24477
pull/24597/head
izeye 4 years ago committed by Stephane Nicoll
parent d1f2aab1e8
commit 8e69a821d5

@ -58,7 +58,8 @@ abstract class AbstractSessionCondition extends SpringBootCondition {
return binder.bind("spring.session.store-type", StoreType.class)
.map((t) -> new ConditionOutcome(t == required,
message.found("spring.session.store-type property").items(t)))
.orElse(ConditionOutcome.noMatch(message.didNotFind("spring.session.store-type property").atAll()));
.orElseGet(() -> ConditionOutcome
.noMatch(message.didNotFind("spring.session.store-type property").atAll()));
}
catch (BindException ex) {
return ConditionOutcome.noMatch(message.found("invalid spring.session.store-type property").atAll());

@ -97,7 +97,7 @@ public class Profiles implements Iterable<String> {
if (hasExplicit(supplier, propertyValue, unset)) {
return supplier.get();
}
return binder.bind(propertyName, String[].class).orElse(StringUtils.toStringArray(unset));
return binder.bind(propertyName, String[].class).orElseGet(() -> StringUtils.toStringArray(unset));
}
private boolean hasExplicit(Supplier<String[]> supplier, String propertyValue, Set<String> unset) {

Loading…
Cancel
Save