Browse Source

Polishing.

Reformat code. Reuse PersistentEntity for mapping instead of resolving TypeInformation from Class.

Original pull request: #4892
See: #4860
4.3.x
Mark Paluch 10 months ago
parent
commit
4ebcdf590b
No known key found for this signature in database
GPG Key ID: 55BC6374BAA9D973
  1. 5
      spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableFindOperationSupport.java
  2. 9
      spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoTemplate.java
  3. 8
      spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/SortingQueryCursorPreparer.java

5
spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableFindOperationSupport.java

@ -20,9 +20,10 @@ import java.util.Optional; @@ -20,9 +20,10 @@ import java.util.Optional;
import java.util.stream.Stream;
import org.bson.Document;
import org.springframework.dao.IncorrectResultSizeDataAccessException;
import org.springframework.data.domain.Window;
import org.springframework.data.domain.ScrollPosition;
import org.springframework.data.domain.Window;
import org.springframework.data.mongodb.core.query.NearQuery;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.SerializationUtils;
@ -228,11 +229,13 @@ class ExecutableFindOperationSupport implements ExecutableFindOperation { @@ -228,11 +229,13 @@ class ExecutableFindOperationSupport implements ExecutableFindOperation {
}
@Override
@Nullable
public ReadPreference getReadPreference() {
return delegate.getReadPreference();
}
@Override
@Nullable
public Document getSortObject() {
return delegate instanceof SortingQueryCursorPreparer sqcp ? sqcp.getSortObject() : null;
}

9
spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoTemplate.java

@ -2624,7 +2624,9 @@ public class MongoTemplate @@ -2624,7 +2624,9 @@ public class MongoTemplate
if (LOGGER.isDebugEnabled()) {
Document mappedSort = preparer instanceof SortingQueryCursorPreparer sqcp ? getMappedSortObject(sqcp.getSortObject(), sourceClass) : null;
Document mappedSort = preparer instanceof SortingQueryCursorPreparer sqcp
? getMappedSortObject(sqcp.getSortObject(), entity)
: null;
LOGGER.debug(String.format("find using query: %s fields: %s sort: %s for class: %s in collection: %s",
serializeToJsonSafely(mappedQuery), mappedFields, serializeToJsonSafely(mappedSort), sourceClass,
collectionName));
@ -2993,7 +2995,7 @@ public class MongoTemplate @@ -2993,7 +2995,7 @@ public class MongoTemplate
}
@Nullable
private Document getMappedSortObject(Document sortObject, MongoPersistentEntity<?> entity) {
private Document getMappedSortObject(Document sortObject, @Nullable MongoPersistentEntity<?> entity) {
if (ObjectUtils.isEmpty(sortObject)) {
return null;
@ -3355,11 +3357,8 @@ public class MongoTemplate @@ -3355,11 +3357,8 @@ public class MongoTemplate
class QueryCursorPreparer implements SortingQueryCursorPreparer {
private final Query query;
private final Document sortObject;
private final int limit;
private final long skip;
private final @Nullable Class<?> type;

8
spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/SortingQueryCursorPreparer.java

@ -19,10 +19,14 @@ import org.bson.Document; @@ -19,10 +19,14 @@ import org.bson.Document;
import org.springframework.lang.Nullable;
/**
* {@link CursorPreparer} that exposes its {@link Document sort document}.
*
* @author Christoph Strobl
* @since 4.3.9
*/
interface SortingQueryCursorPreparer extends CursorPreparer {
@Nullable
Document getSortObject();
@Nullable
Document getSortObject();
}

Loading…
Cancel
Save