Skip to content

Commit 41a3fe1

Browse files
christophstroblmp911de
authored andcommitted
tmp save - doh - srly
1 parent 5e2e445 commit 41a3fe1

File tree

128 files changed

+713
-352
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

128 files changed

+713
-352
lines changed

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/MongoTransactionManager.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,9 @@ public class MongoTransactionManager extends AbstractPlatformTransactionManager
8080
* @see #setTransactionSynchronization(int)
8181
*/
8282
public MongoTransactionManager() {
83+
8384
this.transactionOptionsResolver = MongoTransactionOptionsResolver.defaultResolver();
85+
this.options = MongoTransactionOptions.NONE;
8486
}
8587

8688
/**

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/ReactiveMongoDatabaseUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ public static Mono<MongoDatabase> getDatabase(ReactiveMongoDatabaseFactory facto
113113
* @param factory the {@link ReactiveMongoDatabaseFactory} to get the {@link MongoDatabase} from.
114114
* @return the {@link MongoDatabase} that is potentially associated with a transactional {@link ClientSession}.
115115
*/
116-
public static Mono<MongoDatabase> getDatabase(String dbName, ReactiveMongoDatabaseFactory factory) {
116+
public static Mono<MongoDatabase> getDatabase(@Nullable String dbName, ReactiveMongoDatabaseFactory factory) {
117117
return doGetMongoDatabase(dbName, factory, SessionSynchronization.ON_ACTUAL_TRANSACTION);
118118
}
119119

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/MappingMongoConverterParser.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.List;
2222
import java.util.Set;
2323

24+
import org.jspecify.annotations.NullUnmarked;
2425
import org.jspecify.annotations.Nullable;
2526
import org.springframework.beans.BeanMetadataElement;
2627
import org.springframework.beans.factory.config.BeanDefinition;
@@ -76,6 +77,7 @@
7677
* @author Zied Yaich
7778
* @author Tomasz Forys
7879
*/
80+
@NullUnmarked
7981
public class MappingMongoConverterParser implements BeanDefinitionParser {
8082

8183
private static final String BASE_PACKAGE = "base-package";

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/MongoAuditingBeanDefinitionParser.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import static org.springframework.data.config.ParsingUtils.*;
1919
import static org.springframework.data.mongodb.config.BeanNames.*;
2020

21+
import org.jspecify.annotations.NullUnmarked;
2122
import org.jspecify.annotations.Nullable;
2223
import org.springframework.beans.factory.support.AbstractBeanDefinition;
2324
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
@@ -42,6 +43,7 @@
4243
* @author Oliver Gierke
4344
* @author Mark Paluch
4445
*/
46+
@NullUnmarked
4547
public class MongoAuditingBeanDefinitionParser extends AbstractSingleBeanDefinitionParser {
4648

4749
private static boolean PROJECT_REACTOR_AVAILABLE = ClassUtils.isPresent("reactor.core.publisher.Mono",

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/MongoDbFactoryParser.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import java.util.Set;
2222

23+
import org.jspecify.annotations.NullUnmarked;
2324
import org.jspecify.annotations.Nullable;
2425
import org.springframework.beans.factory.BeanDefinitionStoreException;
2526
import org.springframework.beans.factory.config.BeanDefinition;
@@ -47,6 +48,7 @@
4748
* @author Viktor Khoroshko
4849
* @author Mark Paluch
4950
*/
51+
@NullUnmarked
5052
public class MongoDbFactoryParser extends AbstractBeanDefinitionParser {
5153

5254
private static final Set<String> MONGO_URI_ALLOWED_ADDITIONAL_ATTRIBUTES = Set.of("id", "write-concern");

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/MongoParsingUtils.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import java.util.Map;
2121

22+
import org.jspecify.annotations.NullUnmarked;
2223
import org.springframework.beans.factory.config.BeanDefinition;
2324
import org.springframework.beans.factory.config.CustomEditorConfigurer;
2425
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
@@ -40,6 +41,7 @@
4041
* @author Christoph Strobl
4142
* @author Mark Paluch
4243
*/
44+
@NullUnmarked
4345
abstract class MongoParsingUtils {
4446

4547
private MongoParsingUtils() {}

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/MongoTemplateParser.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import static org.springframework.data.config.ParsingUtils.*;
1919
import static org.springframework.data.mongodb.config.MongoParsingUtils.*;
2020

21+
import org.jspecify.annotations.NullUnmarked;
2122
import org.springframework.beans.factory.BeanDefinitionStoreException;
2223
import org.springframework.beans.factory.config.BeanDefinition;
2324
import org.springframework.beans.factory.parsing.BeanComponentDefinition;
@@ -37,6 +38,7 @@
3738
* @author Martin Baumgartner
3839
* @author Oliver Gierke
3940
*/
41+
@NullUnmarked
4042
class MongoTemplateParser extends AbstractBeanDefinitionParser {
4143

4244
@Override

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ public ChangeStreamEvent(@Nullable ChangeStreamDocument<Document> raw, Class<T>
8989
*/
9090
public @Nullable Instant getTimestamp() {
9191

92-
return getBsonTimestamp() != null ? converter.getConversionService().convert(raw.getClusterTime(), Instant.class)
92+
return getBsonTimestamp() != null && raw != null ? converter.getConversionService().convert(raw.getClusterTime(), Instant.class)
9393
: null;
9494
}
9595

@@ -183,6 +183,7 @@ private T getConvertedFullDocument(Document fullDocument) {
183183
return (T) doGetConverted(fullDocument, CONVERTED_FULL_DOCUMENT_UPDATER);
184184
}
185185

186+
@SuppressWarnings("NullAway")
186187
private Object doGetConverted(Document fullDocument, AtomicReferenceFieldUpdater<ChangeStreamEvent, Object> updater) {
187188

188189
Object result = updater.get(this);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,7 @@ public static class ValidationOptions {
461461
private final @Nullable ValidationLevel validationLevel;
462462
private final @Nullable ValidationAction validationAction;
463463

464-
public ValidationOptions(Validator validator, ValidationLevel validationLevel, ValidationAction validationAction) {
464+
public ValidationOptions(@Nullable Validator validator, @Nullable ValidationLevel validationLevel, @Nullable ValidationAction validationAction) {
465465

466466
this.validator = validator;
467467
this.validationLevel = validationLevel;

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import org.jspecify.annotations.Nullable;
2727
import org.springframework.data.geo.Point;
2828
import org.springframework.data.mongodb.core.query.MetricConversion;
29+
import org.springframework.util.Assert;
2930
import org.springframework.util.ObjectUtils;
3031

3132
/**
@@ -160,6 +161,8 @@ private static Document createGeoWithin(String key, Document source, @Nullable O
160161
boolean spheric = source.containsKey("$nearSphere");
161162
Object $near = spheric ? source.get("$nearSphere") : source.get("$near");
162163

164+
Assert.notNull($near, "Invalid near query - must contain $nearSphere or $near");
165+
163166
Number maxDistance = getMaxDistance(source, $near, spheric);
164167

165168
List<Object> $centerMax = Arrays.asList(toCenterCoordinates($near), maxDistance);
@@ -251,6 +254,9 @@ private static Object toCenterCoordinates(Object value) {
251254

252255
if (document.containsKey("$geometry")) {
253256
Document geoJsonPoint = document.get("$geometry", Document.class);
257+
if(!geoJsonPoint.containsKey("coordinates")) {
258+
throw new IllegalStateException("Invalid geometry without coordinates.");
259+
}
254260
return geoJsonPoint.get("coordinates");
255261
}
256262
}

0 commit comments

Comments
 (0)