From ed9c7bb30584958b3cd1f980145a791a736cdff8 Mon Sep 17 00:00:00 2001 From: mikereiche Date: Thu, 7 Sep 2023 10:56:43 -0700 Subject: [PATCH] Fix JDK8 compilation errors introduced by cherry-picking #1363. Closes #1816. --- .../document/CouchbaseDocumentSerializer.java | 12 ++++++------ .../CouchbaseRepositoryQuerydslIntegrationTests.java | 10 ++++++---- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/querydsl/couchbase/document/CouchbaseDocumentSerializer.java b/src/main/java/com/querydsl/couchbase/document/CouchbaseDocumentSerializer.java index 310c67529..f8e1b69f1 100644 --- a/src/main/java/com/querydsl/couchbase/document/CouchbaseDocumentSerializer.java +++ b/src/main/java/com/querydsl/couchbase/document/CouchbaseDocumentSerializer.java @@ -15,6 +15,9 @@ */ package com.querydsl.couchbase.document; +import static com.querydsl.core.types.OrderSpecifier.NullHandling.NullsFirst; +import static com.querydsl.core.types.OrderSpecifier.NullHandling.NullsLast; + import java.util.Collection; import java.util.List; import java.util.regex.Pattern; @@ -31,6 +34,7 @@ import com.querydsl.core.types.Operation; import com.querydsl.core.types.Operator; import com.querydsl.core.types.Ops; +import com.querydsl.core.types.Order; import com.querydsl.core.types.OrderSpecifier; import com.querydsl.core.types.ParamExpression; import com.querydsl.core.types.Path; @@ -39,7 +43,6 @@ import com.querydsl.core.types.SubQueryExpression; import com.querydsl.core.types.TemplateExpression; import com.querydsl.core.types.Visitor; -import com.querydsl.core.types.Order; /** * Serializes the given Querydsl query to a Document query for Couchbase. @@ -58,11 +61,8 @@ public Sort toSort(List> orderBys) { for (OrderSpecifier orderBy : orderBys) { Object key = orderBy.getTarget().accept(this, null); String keyAsString = key.toString(); - Sort.NullHandling sortNullHandling = switch (orderBy.getNullHandling()) { - case NullsFirst -> Sort.NullHandling.NULLS_FIRST; - case NullsLast -> Sort.NullHandling.NULLS_LAST; - default -> Sort.NullHandling.NATIVE; - }; + Sort.NullHandling sortNullHandling = orderBy.getNullHandling() == NullsFirst ? Sort.NullHandling.NULLS_FIRST + : orderBy.getNullHandling() == NullsLast ? Sort.NullHandling.NULLS_LAST : Sort.NullHandling.NATIVE; Sort.Direction sortDirection = orderBy.getOrder() == Order.ASC ? Sort.Direction.ASC : Sort.Direction.DESC; Sort.Order sortOrder = new Sort.Order(sortDirection, keyAsString, sortNullHandling); sort = sort.and(Sort.by(sortOrder)); diff --git a/src/test/java/org/springframework/data/couchbase/repository/query/CouchbaseRepositoryQuerydslIntegrationTests.java b/src/test/java/org/springframework/data/couchbase/repository/query/CouchbaseRepositoryQuerydslIntegrationTests.java index 18c56438a..1e3c3d519 100644 --- a/src/test/java/org/springframework/data/couchbase/repository/query/CouchbaseRepositoryQuerydslIntegrationTests.java +++ b/src/test/java/org/springframework/data/couchbase/repository/query/CouchbaseRepositoryQuerydslIntegrationTests.java @@ -25,8 +25,10 @@ import java.util.Arrays; import java.util.Comparator; +import java.util.List; import java.util.Locale; import java.util.Optional; +import java.util.stream.Collectors; import java.util.stream.StreamSupport; import org.junit.jupiter.api.AfterAll; @@ -419,7 +421,7 @@ void testIn() { @Test void testSort(){ { - BooleanExpression predicate = airline.name.in(Arrays.stream(saved).map(Airline::getName).toList()); + BooleanExpression predicate = airline.name.in((Arrays.stream(saved).map(Airline::getName)).collect(Collectors.toList())); Iterable result = airlineRepository.findAll(predicate, Sort.by("name").ascending()); assertArrayEquals(StreamSupport.stream(result.spliterator(), false).toArray(Airline[]::new), Arrays.stream(saved) @@ -429,7 +431,7 @@ void testSort(){ } { - BooleanExpression predicate = airline.name.in(Arrays.stream(saved).map(Airline::getName).toList()); + BooleanExpression predicate = airline.name.in((Arrays.stream(saved).map(Airline::getName)).collect(Collectors.toList())); Iterable result = airlineRepository.findAll(predicate, Sort.by("name").descending()); assertArrayEquals(StreamSupport.stream(result.spliterator(), false).toArray(Airline[]::new), Arrays.stream(saved) @@ -439,7 +441,7 @@ void testSort(){ } { - BooleanExpression predicate = airline.name.in(Arrays.stream(saved).map(Airline::getName).toList()); + BooleanExpression predicate = airline.name.in((Arrays.stream(saved).map(Airline::getName)).collect(Collectors.toList())); Iterable result = airlineRepository.findAll(predicate, airline.name.asc()); assertArrayEquals(StreamSupport.stream(result.spliterator(), false).toArray(Airline[]::new), Arrays.stream(saved) @@ -449,7 +451,7 @@ void testSort(){ } { - BooleanExpression predicate = airline.name.in(Arrays.stream(saved).map(Airline::getName).toList()); + BooleanExpression predicate = airline.name.in((Arrays.stream(saved).map(Airline::getName)).collect(Collectors.toList())); Iterable result = airlineRepository.findAll(predicate, airline.name.desc()); assertArrayEquals(StreamSupport.stream(result.spliterator(), false).toArray(Airline[]::new), Arrays.stream(saved)