@@ -36,7 +36,7 @@ import org.springframework.lang.Nullable;
|
||||
*/
|
||||
public class JpaCountQueryCreator extends JpaQueryCreator {
|
||||
|
||||
private boolean distinct;
|
||||
private final boolean distinct;
|
||||
|
||||
/**
|
||||
* Creates a new {@link JpaCountQueryCreator}.
|
||||
@@ -56,20 +56,18 @@ public class JpaCountQueryCreator extends JpaQueryCreator {
|
||||
|
||||
@Override
|
||||
protected CriteriaQuery<? extends Object> createCriteriaQuery(CriteriaBuilder builder, ReturnedType type) {
|
||||
|
||||
return builder.createQuery(Long.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("unchecked")
|
||||
protected CriteriaQuery<? extends Object> complete(@Nullable Predicate predicate, Sort sort,
|
||||
CriteriaQuery<? extends Object> query, CriteriaBuilder builder, Root<?> root) {
|
||||
CriteriaQuery<? extends Object> query, CriteriaBuilder builder, Root<?> root) {
|
||||
|
||||
CriteriaQuery<? extends Object> select = query.select(getCountQuery(builder, root));
|
||||
return predicate == null ? select : select.where(predicate);
|
||||
}
|
||||
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
private Expression getCountQuery(CriteriaBuilder builder, Root<?> root) {
|
||||
return distinct ? builder.countDistinct(root) : builder.count(root);
|
||||
|
||||
@@ -54,7 +54,7 @@ import org.springframework.util.ObjectUtils;
|
||||
* @author Donghun Shin
|
||||
* @author Greg Turnquist
|
||||
*/
|
||||
class ParameterMetadataProvider {
|
||||
public class ParameterMetadataProvider {
|
||||
|
||||
private final CriteriaBuilder builder;
|
||||
private final Iterator<? extends Parameter> parameters;
|
||||
@@ -191,7 +191,7 @@ class ParameterMetadataProvider {
|
||||
* @author Andrey Kovalev
|
||||
* @param <T>
|
||||
*/
|
||||
static class ParameterMetadata<T> {
|
||||
public static class ParameterMetadata<T> {
|
||||
|
||||
static final Object PLACEHOLDER = new Object();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user