diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java index c10511df1..186ab43ef 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java @@ -357,7 +357,7 @@ public class QuerydslBindings { public void first(SingleValueBinding binding) { Assert.notNull(binding, "Binding must not be null!"); - all((path, value) -> Optionals.next(value.iterator()).flatMap(t -> binding.bind(path, t))); + all((path, value) -> Optionals.next(value.iterator()).map(t -> binding.bind(path, t))); } /** @@ -476,8 +476,7 @@ public class QuerydslBindings { public

> void first(SingleValueBinding binding) { Assert.notNull(binding, "Binding must not be null!"); - all((MultiValueBinding) (path, value) -> Optionals.next(value.iterator()) - .flatMap(t -> binding.bind(path, t))); + all((MultiValueBinding) (path, value) -> Optionals.next(value.iterator()).map(t -> binding.bind(path, t))); } /** diff --git a/src/main/java/org/springframework/data/querydsl/binding/SingleValueBinding.java b/src/main/java/org/springframework/data/querydsl/binding/SingleValueBinding.java index 9063280f9..67ff567c8 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/SingleValueBinding.java +++ b/src/main/java/org/springframework/data/querydsl/binding/SingleValueBinding.java @@ -15,8 +15,6 @@ */ package org.springframework.data.querydsl.binding; -import java.util.Optional; - import com.querydsl.core.types.Path; import com.querydsl.core.types.Predicate; @@ -40,5 +38,5 @@ public interface SingleValueBinding, S> { * @return can be {@literal null}, in which case the binding will not be incorporated in the overall {@link Predicate} * . */ - Optional bind(T path, S value); + Predicate bind(T path, S value); } diff --git a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java index 773c2bdb0..42cc5bdce 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java @@ -43,8 +43,7 @@ public class QuerydslBindingsUnitTests { QuerydslPredicateBuilder builder; QuerydslBindings bindings; - static final SingleValueBinding CONTAINS_BINDING = (path, value) -> Optional - .of(path.contains(value)); + static final SingleValueBinding CONTAINS_BINDING = (path, value) -> path.contains(value); @Before public void setUp() { @@ -266,13 +265,13 @@ public class QuerydslBindingsUnitTests { INSTANCE; - /* + /* * (non-Javadoc) * @see org.springframework.data.querydsl.binding.SingleValueBinding#bind(com.querydsl.core.types.Path, java.lang.Object) */ @Override - public Optional bind(StringPath path, String value) { - return Optional.of(path.contains(value)); + public Predicate bind(StringPath path, String value) { + return path.contains(value); } } } diff --git a/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java index 5d6b3e9de..3c8d43916 100755 --- a/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java @@ -97,8 +97,8 @@ public class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("firstname", "rand"); - Predicate predicate = resolver.resolveArgument( - getMethodParameterFor("simpleFind", Predicate.class), null, new ServletWebRequest(request), null); + Predicate predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, + new ServletWebRequest(request), null); assertThat(predicate).isEqualTo((Predicate) QUser.user.firstname.eq("rand")); } @@ -157,8 +157,8 @@ public class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("inceptionYear", "978"); - Predicate predicate = resolver.resolveArgument( - getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); + Predicate predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, + new ServletWebRequest(request), null); assertThat(predicate).isEqualTo((Predicate) QUser.user.inceptionYear.eq(978L)); } @@ -168,8 +168,8 @@ public class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("inceptionYear", new String[] { "978", "998" }); - Predicate predicate = resolver.resolveArgument( - getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); + Predicate predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, + new ServletWebRequest(request), null); assertThat(predicate).isEqualTo((Predicate) QUser.user.inceptionYear.in(978L, 998L)); } @@ -222,7 +222,7 @@ public class QuerydslPredicateArgumentResolverUnitTests { public void customize(QuerydslBindings bindings, QUser user) { bindings.bind(user.firstname).firstOptional((path, value) -> value.map(it -> path.eq(it.toUpperCase()))); - bindings.bind(user.lastname).first((path, value) -> Optional.of(path.toLowerCase().eq(value))); + bindings.bind(user.lastname).first((path, value) -> path.toLowerCase().eq(value)); bindings.excluding(user.address); } @@ -253,7 +253,7 @@ public class QuerydslPredicateArgumentResolverUnitTests { @Override public void customize(QuerydslBindings bindings, QUser user) { - bindings.bind(QUser.user.firstname).first((path, value) -> Optional.of(path.contains(value))); + bindings.bind(QUser.user.firstname).first((path, value) -> path.contains(value)); } } }