├── .github
├── PULL_REQUEST_TEMPLATE.md
├── dco.yml
└── workflows
│ └── project.yml
├── .gitignore
├── .mvn
├── extensions.xml
├── jvm.config
└── wrapper
│ ├── maven-wrapper.jar
│ └── maven-wrapper.properties
├── CI.adoc
├── CONTRIBUTING.adoc
├── Jenkinsfile
├── LICENSE.txt
├── README.adoc
├── SECURITY.adoc
├── ci
├── README.adoc
├── openjdk24-mongodb-8.0
│ └── Dockerfile
├── pipeline.properties
└── start-replica.sh
├── lombok.config
├── mvnw
├── mvnw.cmd
├── pom.xml
├── settings.xml
├── spring-data-mongodb-distribution
├── package.json
└── pom.xml
├── spring-data-mongodb
├── Spring Data MongoDB.sonargraph
├── etc
│ └── eclipse-formatter.xml
├── pom.xml
└── src
│ ├── jmh
│ └── java
│ │ └── org
│ │ └── springframework
│ │ └── data
│ │ └── mongodb
│ │ ├── core
│ │ ├── ProjectionsBenchmark.java
│ │ └── convert
│ │ │ ├── DbRefMappingBenchmark.java
│ │ │ └── MappingMongoConverterBenchmark.java
│ │ ├── microbenchmark
│ │ ├── AbstractMicrobenchmark.java
│ │ ├── HttpResultsWriter.java
│ │ ├── MongoResultsWriter.java
│ │ └── ResultsWriter.java
│ │ └── repository
│ │ ├── AotRepositoryBenchmark.java
│ │ ├── SmallerPersonRepository.java
│ │ └── SmallerRepositoryBenchmark.java
│ ├── main
│ ├── java
│ │ └── org
│ │ │ └── springframework
│ │ │ └── data
│ │ │ └── mongodb
│ │ │ ├── BindableMongoExpression.java
│ │ │ ├── BulkOperationException.java
│ │ │ ├── ClientSessionException.java
│ │ │ ├── CodecRegistryProvider.java
│ │ │ ├── DefaultMongoTransactionOptionsResolver.java
│ │ │ ├── InvalidMongoDbApiUsageException.java
│ │ │ ├── LazyLoadingException.java
│ │ │ ├── MongoCollectionUtils.java
│ │ │ ├── MongoDatabaseFactory.java
│ │ │ ├── MongoDatabaseUtils.java
│ │ │ ├── MongoExpression.java
│ │ │ ├── MongoManagedTypes.java
│ │ │ ├── MongoResourceHolder.java
│ │ │ ├── MongoSessionProvider.java
│ │ │ ├── MongoTransactionException.java
│ │ │ ├── MongoTransactionManager.java
│ │ │ ├── MongoTransactionOptions.java
│ │ │ ├── MongoTransactionOptionsResolver.java
│ │ │ ├── ReactiveMongoDatabaseFactory.java
│ │ │ ├── ReactiveMongoDatabaseUtils.java
│ │ │ ├── ReactiveMongoResourceHolder.java
│ │ │ ├── ReactiveMongoTransactionManager.java
│ │ │ ├── SessionAwareMethodInterceptor.java
│ │ │ ├── SessionSynchronization.java
│ │ │ ├── SimpleMongoTransactionOptions.java
│ │ │ ├── SpringDataMongoDB.java
│ │ │ ├── TransactionMetadata.java
│ │ │ ├── TransactionOptionResolver.java
│ │ │ ├── TransientClientSessionException.java
│ │ │ ├── TransientMongoDbException.java
│ │ │ ├── UncategorizedMongoDbException.java
│ │ │ ├── aot
│ │ │ ├── LazyLoadingProxyAotProcessor.java
│ │ │ ├── MongoAotPredicates.java
│ │ │ ├── MongoAotReflectionHelper.java
│ │ │ ├── MongoManagedTypesBeanRegistrationAotProcessor.java
│ │ │ └── MongoRuntimeHints.java
│ │ │ ├── config
│ │ │ ├── AbstractMongoClientConfiguration.java
│ │ │ ├── AbstractReactiveMongoConfiguration.java
│ │ │ ├── BeanNames.java
│ │ │ ├── ConnectionStringPropertyEditor.java
│ │ │ ├── EnableMongoAuditing.java
│ │ │ ├── EnableReactiveMongoAuditing.java
│ │ │ ├── GeoJsonConfiguration.java
│ │ │ ├── GridFsTemplateParser.java
│ │ │ ├── MappingMongoConverterParser.java
│ │ │ ├── MongoAuditingBeanDefinitionParser.java
│ │ │ ├── MongoAuditingRegistrar.java
│ │ │ ├── MongoClientParser.java
│ │ │ ├── MongoConfigurationSupport.java
│ │ │ ├── MongoCredentialPropertyEditor.java
│ │ │ ├── MongoDbFactoryParser.java
│ │ │ ├── MongoNamespaceHandler.java
│ │ │ ├── MongoParsingUtils.java
│ │ │ ├── MongoTemplateParser.java
│ │ │ ├── PersistentEntitiesFactoryBean.java
│ │ │ ├── ReactiveMongoAuditingRegistrar.java
│ │ │ ├── ReadConcernPropertyEditor.java
│ │ │ ├── ReadPreferencePropertyEditor.java
│ │ │ ├── ServerAddressPropertyEditor.java
│ │ │ ├── StringToWriteConcernConverter.java
│ │ │ ├── UUidRepresentationPropertyEditor.java
│ │ │ ├── WriteConcernPropertyEditor.java
│ │ │ └── package-info.java
│ │ │ ├── core
│ │ │ ├── AggregationUtil.java
│ │ │ ├── BulkOperations.java
│ │ │ ├── BulkOperationsSupport.java
│ │ │ ├── ChangeStreamEvent.java
│ │ │ ├── ChangeStreamOptions.java
│ │ │ ├── CollectionCallback.java
│ │ │ ├── CollectionOptions.java
│ │ │ ├── CollectionPreparer.java
│ │ │ ├── CollectionPreparerSupport.java
│ │ │ ├── CountQuery.java
│ │ │ ├── CursorPreparer.java
│ │ │ ├── DbCallback.java
│ │ │ ├── DefaultBulkOperations.java
│ │ │ ├── DefaultIndexOperations.java
│ │ │ ├── DefaultIndexOperationsProvider.java
│ │ │ ├── DefaultReactiveBulkOperations.java
│ │ │ ├── DefaultReactiveIndexOperations.java
│ │ │ ├── DefaultScriptOperations.java
│ │ │ ├── DefaultWriteConcernResolver.java
│ │ │ ├── DocumentCallbackHandler.java
│ │ │ ├── EncryptionAlgorithms.java
│ │ │ ├── EntityLifecycleEventDelegate.java
│ │ │ ├── EntityOperations.java
│ │ │ ├── EntityResultConverter.java
│ │ │ ├── ExecutableAggregationOperation.java
│ │ │ ├── ExecutableAggregationOperationSupport.java
│ │ │ ├── ExecutableFindOperation.java
│ │ │ ├── ExecutableFindOperationSupport.java
│ │ │ ├── ExecutableInsertOperation.java
│ │ │ ├── ExecutableInsertOperationSupport.java
│ │ │ ├── ExecutableMapReduceOperation.java
│ │ │ ├── ExecutableMapReduceOperationSupport.java
│ │ │ ├── ExecutableRemoveOperation.java
│ │ │ ├── ExecutableRemoveOperationSupport.java
│ │ │ ├── ExecutableUpdateOperation.java
│ │ │ ├── ExecutableUpdateOperationSupport.java
│ │ │ ├── FindAndModifyOptions.java
│ │ │ ├── FindAndReplaceOptions.java
│ │ │ ├── FindPublisherPreparer.java
│ │ │ ├── FluentMongoOperations.java
│ │ │ ├── GeoCommandStatistics.java
│ │ │ ├── HintFunction.java
│ │ │ ├── IndexConverters.java
│ │ │ ├── MappedDocument.java
│ │ │ ├── MappingMongoJsonSchemaCreator.java
│ │ │ ├── MongoAction.java
│ │ │ ├── MongoActionOperation.java
│ │ │ ├── MongoAdmin.java
│ │ │ ├── MongoAdminOperations.java
│ │ │ ├── MongoClientFactoryBean.java
│ │ │ ├── MongoClientSettingsFactoryBean.java
│ │ │ ├── MongoDataIntegrityViolationException.java
│ │ │ ├── MongoDatabaseFactorySupport.java
│ │ │ ├── MongoEncryptionSettingsFactoryBean.java
│ │ │ ├── MongoExceptionTranslator.java
│ │ │ ├── MongoJsonSchemaCreator.java
│ │ │ ├── MongoOperations.java
│ │ │ ├── MongoServerApiFactoryBean.java
│ │ │ ├── MongoTemplate.java
│ │ │ ├── PropertyOperations.java
│ │ │ ├── QueryOperations.java
│ │ │ ├── QueryResultConverter.java
│ │ │ ├── ReactiveAggregationOperation.java
│ │ │ ├── ReactiveAggregationOperationSupport.java
│ │ │ ├── ReactiveBulkOperations.java
│ │ │ ├── ReactiveChangeStreamOperation.java
│ │ │ ├── ReactiveChangeStreamOperationSupport.java
│ │ │ ├── ReactiveCollectionCallback.java
│ │ │ ├── ReactiveDatabaseCallback.java
│ │ │ ├── ReactiveFindOperation.java
│ │ │ ├── ReactiveFindOperationSupport.java
│ │ │ ├── ReactiveFluentMongoOperations.java
│ │ │ ├── ReactiveInsertOperation.java
│ │ │ ├── ReactiveInsertOperationSupport.java
│ │ │ ├── ReactiveMapReduceOperation.java
│ │ │ ├── ReactiveMapReduceOperationSupport.java
│ │ │ ├── ReactiveMongoClientFactoryBean.java
│ │ │ ├── ReactiveMongoContext.java
│ │ │ ├── ReactiveMongoOperations.java
│ │ │ ├── ReactiveMongoTemplate.java
│ │ │ ├── ReactiveRemoveOperation.java
│ │ │ ├── ReactiveRemoveOperationSupport.java
│ │ │ ├── ReactiveSessionCallback.java
│ │ │ ├── ReactiveSessionScoped.java
│ │ │ ├── ReactiveUpdateOperation.java
│ │ │ ├── ReactiveUpdateOperationSupport.java
│ │ │ ├── ReadConcernAware.java
│ │ │ ├── ReadPreferenceAware.java
│ │ │ ├── ReplaceOptions.java
│ │ │ ├── ScriptOperations.java
│ │ │ ├── ScrollUtils.java
│ │ │ ├── SessionCallback.java
│ │ │ ├── SessionScoped.java
│ │ │ ├── SimpleMongoClientDatabaseFactory.java
│ │ │ ├── SimpleReactiveMongoDatabaseFactory.java
│ │ │ ├── SortingQueryCursorPreparer.java
│ │ │ ├── ViewOptions.java
│ │ │ ├── WriteConcernAware.java
│ │ │ ├── WriteConcernResolver.java
│ │ │ ├── WriteResultChecking.java
│ │ │ ├── aggregation
│ │ │ │ ├── AbstractAggregationExpression.java
│ │ │ │ ├── AccumulatorOperators.java
│ │ │ │ ├── AddFieldsOperation.java
│ │ │ │ ├── Aggregation.java
│ │ │ │ ├── AggregationExpression.java
│ │ │ │ ├── AggregationExpressionCriteria.java
│ │ │ │ ├── AggregationExpressionTransformer.java
│ │ │ │ ├── AggregationOperation.java
│ │ │ │ ├── AggregationOperationContext.java
│ │ │ │ ├── AggregationOperationRenderer.java
│ │ │ │ ├── AggregationOptions.java
│ │ │ │ ├── AggregationPipeline.java
│ │ │ │ ├── AggregationResults.java
│ │ │ │ ├── AggregationSpELExpression.java
│ │ │ │ ├── AggregationUpdate.java
│ │ │ │ ├── AggregationUtils.java
│ │ │ │ ├── AggregationVariable.java
│ │ │ │ ├── ArithmeticOperators.java
│ │ │ │ ├── ArrayOperators.java
│ │ │ │ ├── BasicAggregationOperation.java
│ │ │ │ ├── BooleanOperators.java
│ │ │ │ ├── BucketAutoOperation.java
│ │ │ │ ├── BucketOperation.java
│ │ │ │ ├── BucketOperationSupport.java
│ │ │ │ ├── ComparisonOperators.java
│ │ │ │ ├── ConditionalOperators.java
│ │ │ │ ├── ConvertOperators.java
│ │ │ │ ├── CountOperation.java
│ │ │ │ ├── DataTypeOperators.java
│ │ │ │ ├── DateOperators.java
│ │ │ │ ├── DensifyOperation.java
│ │ │ │ ├── DocumentEnhancingOperation.java
│ │ │ │ ├── DocumentOperators.java
│ │ │ │ ├── EvaluationOperators.java
│ │ │ │ ├── ExposedFields.java
│ │ │ │ ├── ExposedFieldsAggregationOperationContext.java
│ │ │ │ ├── FacetOperation.java
│ │ │ │ ├── Field.java
│ │ │ │ ├── FieldLookupPolicy.java
│ │ │ │ ├── Fields.java
│ │ │ │ ├── FieldsExposingAggregationOperation.java
│ │ │ │ ├── GeoNearOperation.java
│ │ │ │ ├── GraphLookupOperation.java
│ │ │ │ ├── GroupOperation.java
│ │ │ │ ├── InheritingExposedFieldsAggregationOperationContext.java
│ │ │ │ ├── LimitOperation.java
│ │ │ │ ├── LiteralOperators.java
│ │ │ │ ├── LookupOperation.java
│ │ │ │ ├── MatchOperation.java
│ │ │ │ ├── MergeOperation.java
│ │ │ │ ├── NestedDelegatingExpressionAggregationOperationContext.java
│ │ │ │ ├── ObjectOperators.java
│ │ │ │ ├── OutOperation.java
│ │ │ │ ├── PrefixingDelegatingAggregationOperationContext.java
│ │ │ │ ├── ProjectionOperation.java
│ │ │ │ ├── RedactOperation.java
│ │ │ │ ├── RelaxedTypeBasedAggregationOperationContext.java
│ │ │ │ ├── ReplaceRootOperation.java
│ │ │ │ ├── ReplaceWithOperation.java
│ │ │ │ ├── SampleOperation.java
│ │ │ │ ├── ScriptOperators.java
│ │ │ │ ├── SelectionOperators.java
│ │ │ │ ├── SetOperation.java
│ │ │ │ ├── SetOperators.java
│ │ │ │ ├── SetWindowFieldsOperation.java
│ │ │ │ ├── SkipOperation.java
│ │ │ │ ├── SortByCountOperation.java
│ │ │ │ ├── SortOperation.java
│ │ │ │ ├── SpelExpressionTransformer.java
│ │ │ │ ├── StringOperators.java
│ │ │ │ ├── SystemVariable.java
│ │ │ │ ├── TypeBasedAggregationOperationContext.java
│ │ │ │ ├── TypedAggregation.java
│ │ │ │ ├── UnionWithOperation.java
│ │ │ │ ├── UnsetOperation.java
│ │ │ │ ├── UnwindOperation.java
│ │ │ │ ├── VariableOperators.java
│ │ │ │ ├── VectorSearchOperation.java
│ │ │ │ └── package-info.java
│ │ │ ├── annotation
│ │ │ │ ├── Collation.java
│ │ │ │ └── package-info.java
│ │ │ ├── convert
│ │ │ │ ├── AbstractMongoConverter.java
│ │ │ │ ├── DbRefProxyHandler.java
│ │ │ │ ├── DbRefResolver.java
│ │ │ │ ├── DbRefResolverCallback.java
│ │ │ │ ├── DefaultDbRefProxyHandler.java
│ │ │ │ ├── DefaultDbRefResolver.java
│ │ │ │ ├── DefaultDbRefResolverCallback.java
│ │ │ │ ├── DefaultMongoTypeMapper.java
│ │ │ │ ├── DefaultReferenceResolver.java
│ │ │ │ ├── DocumentAccessor.java
│ │ │ │ ├── DocumentPointerFactory.java
│ │ │ │ ├── DocumentPropertyAccessor.java
│ │ │ │ ├── DocumentReferenceSource.java
│ │ │ │ ├── GeoConverters.java
│ │ │ │ ├── JsonSchemaMapper.java
│ │ │ │ ├── LazyLoadingProxy.java
│ │ │ │ ├── LazyLoadingProxyFactory.java
│ │ │ │ ├── MappingMongoConverter.java
│ │ │ │ ├── MongoConversionContext.java
│ │ │ │ ├── MongoConverter.java
│ │ │ │ ├── MongoConverters.java
│ │ │ │ ├── MongoCustomConversions.java
│ │ │ │ ├── MongoDatabaseFactoryReferenceLoader.java
│ │ │ │ ├── MongoExampleMapper.java
│ │ │ │ ├── MongoJsonSchemaMapper.java
│ │ │ │ ├── MongoTypeMapper.java
│ │ │ │ ├── MongoValueConverter.java
│ │ │ │ ├── MongoWriter.java
│ │ │ │ ├── NoOpDbRefResolver.java
│ │ │ │ ├── ObjectPath.java
│ │ │ │ ├── QueryMapper.java
│ │ │ │ ├── ReferenceLoader.java
│ │ │ │ ├── ReferenceLookupDelegate.java
│ │ │ │ ├── ReferenceResolver.java
│ │ │ │ ├── UpdateMapper.java
│ │ │ │ ├── ValueResolver.java
│ │ │ │ ├── encryption
│ │ │ │ │ ├── EncryptingConverter.java
│ │ │ │ │ ├── ExplicitEncryptionContext.java
│ │ │ │ │ ├── MongoEncryptionConverter.java
│ │ │ │ │ └── package-info.java
│ │ │ │ └── package-info.java
│ │ │ ├── encryption
│ │ │ │ ├── Encryption.java
│ │ │ │ ├── EncryptionContext.java
│ │ │ │ ├── EncryptionKey.java
│ │ │ │ ├── EncryptionKeyResolver.java
│ │ │ │ ├── EncryptionOptions.java
│ │ │ │ ├── KeyAltName.java
│ │ │ │ ├── KeyId.java
│ │ │ │ ├── MongoClientEncryption.java
│ │ │ │ └── package-info.java
│ │ │ ├── geo
│ │ │ │ ├── GeoJson.java
│ │ │ │ ├── GeoJsonGeometryCollection.java
│ │ │ │ ├── GeoJsonLineString.java
│ │ │ │ ├── GeoJsonModule.java
│ │ │ │ ├── GeoJsonMultiLineString.java
│ │ │ │ ├── GeoJsonMultiPoint.java
│ │ │ │ ├── GeoJsonMultiPolygon.java
│ │ │ │ ├── GeoJsonPoint.java
│ │ │ │ ├── GeoJsonPolygon.java
│ │ │ │ ├── GeoJsonSerializersModule.java
│ │ │ │ ├── Sphere.java
│ │ │ │ └── package-info.java
│ │ │ ├── index
│ │ │ │ ├── CompoundIndex.java
│ │ │ │ ├── CompoundIndexDefinition.java
│ │ │ │ ├── CompoundIndexes.java
│ │ │ │ ├── DefaultSearchIndexOperations.java
│ │ │ │ ├── GeoSpatialIndexType.java
│ │ │ │ ├── GeoSpatialIndexed.java
│ │ │ │ ├── GeospatialIndex.java
│ │ │ │ ├── HashIndexed.java
│ │ │ │ ├── HashedIndex.java
│ │ │ │ ├── Index.java
│ │ │ │ ├── IndexDefinition.java
│ │ │ │ ├── IndexDirection.java
│ │ │ │ ├── IndexField.java
│ │ │ │ ├── IndexFilter.java
│ │ │ │ ├── IndexInfo.java
│ │ │ │ ├── IndexOperations.java
│ │ │ │ ├── IndexOperationsAdapter.java
│ │ │ │ ├── IndexOperationsProvider.java
│ │ │ │ ├── IndexOptions.java
│ │ │ │ ├── IndexPredicate.java
│ │ │ │ ├── IndexResolver.java
│ │ │ │ ├── Indexed.java
│ │ │ │ ├── MongoMappingEventPublisher.java
│ │ │ │ ├── MongoPersistentEntityIndexCreator.java
│ │ │ │ ├── MongoPersistentEntityIndexResolver.java
│ │ │ │ ├── PartialIndexFilter.java
│ │ │ │ ├── ReactiveIndexOperations.java
│ │ │ │ ├── ReactiveIndexOperationsProvider.java
│ │ │ │ ├── ReactiveMongoPersistentEntityIndexCreator.java
│ │ │ │ ├── SearchIndexDefinition.java
│ │ │ │ ├── SearchIndexInfo.java
│ │ │ │ ├── SearchIndexOperations.java
│ │ │ │ ├── SearchIndexOperationsProvider.java
│ │ │ │ ├── SearchIndexStatus.java
│ │ │ │ ├── TextIndexDefinition.java
│ │ │ │ ├── TextIndexed.java
│ │ │ │ ├── VectorIndex.java
│ │ │ │ ├── WildcardIndex.java
│ │ │ │ ├── WildcardIndexed.java
│ │ │ │ └── package-info.java
│ │ │ ├── mapping
│ │ │ │ ├── BasicMongoPersistentEntity.java
│ │ │ │ ├── BasicMongoPersistentProperty.java
│ │ │ │ ├── CachingMongoPersistentProperty.java
│ │ │ │ ├── DBRef.java
│ │ │ │ ├── Document.java
│ │ │ │ ├── DocumentPointer.java
│ │ │ │ ├── DocumentReference.java
│ │ │ │ ├── Encrypted.java
│ │ │ │ ├── ExplicitEncrypted.java
│ │ │ │ ├── Field.java
│ │ │ │ ├── FieldName.java
│ │ │ │ ├── FieldType.java
│ │ │ │ ├── Language.java
│ │ │ │ ├── MongoField.java
│ │ │ │ ├── MongoId.java
│ │ │ │ ├── MongoMappingContext.java
│ │ │ │ ├── MongoPersistentEntity.java
│ │ │ │ ├── MongoPersistentProperty.java
│ │ │ │ ├── MongoSimpleTypes.java
│ │ │ │ ├── MongoVector.java
│ │ │ │ ├── PersistentPropertyTranslator.java
│ │ │ │ ├── Queryable.java
│ │ │ │ ├── RangeEncrypted.java
│ │ │ │ ├── ShardKey.java
│ │ │ │ ├── Sharded.java
│ │ │ │ ├── ShardingStrategy.java
│ │ │ │ ├── TextScore.java
│ │ │ │ ├── TimeSeries.java
│ │ │ │ ├── UnwrapEntityContext.java
│ │ │ │ ├── Unwrapped.java
│ │ │ │ ├── UnwrappedMongoPersistentEntity.java
│ │ │ │ ├── UnwrappedMongoPersistentProperty.java
│ │ │ │ ├── event
│ │ │ │ │ ├── AbstractDeleteEvent.java
│ │ │ │ │ ├── AbstractMongoEventListener.java
│ │ │ │ │ ├── AfterConvertCallback.java
│ │ │ │ │ ├── AfterConvertEvent.java
│ │ │ │ │ ├── AfterDeleteEvent.java
│ │ │ │ │ ├── AfterLoadEvent.java
│ │ │ │ │ ├── AfterSaveCallback.java
│ │ │ │ │ ├── AfterSaveEvent.java
│ │ │ │ │ ├── AuditingEntityCallback.java
│ │ │ │ │ ├── BeanValidationDelegate.java
│ │ │ │ │ ├── BeforeConvertCallback.java
│ │ │ │ │ ├── BeforeConvertEvent.java
│ │ │ │ │ ├── BeforeDeleteEvent.java
│ │ │ │ │ ├── BeforeSaveCallback.java
│ │ │ │ │ ├── BeforeSaveEvent.java
│ │ │ │ │ ├── LoggingEventListener.java
│ │ │ │ │ ├── MongoMappingEvent.java
│ │ │ │ │ ├── ReactiveAfterConvertCallback.java
│ │ │ │ │ ├── ReactiveAfterSaveCallback.java
│ │ │ │ │ ├── ReactiveAuditingEntityCallback.java
│ │ │ │ │ ├── ReactiveBeforeConvertCallback.java
│ │ │ │ │ ├── ReactiveBeforeSaveCallback.java
│ │ │ │ │ ├── ReactiveValidatingEntityCallback.java
│ │ │ │ │ ├── ValidatingEntityCallback.java
│ │ │ │ │ ├── ValidatingMongoEventListener.java
│ │ │ │ │ └── package-info.java
│ │ │ │ └── package-info.java
│ │ │ ├── mapreduce
│ │ │ │ ├── MapReduceCounts.java
│ │ │ │ ├── MapReduceOptions.java
│ │ │ │ ├── MapReduceResults.java
│ │ │ │ ├── MapReduceTiming.java
│ │ │ │ └── package-info.java
│ │ │ ├── messaging
│ │ │ │ ├── Cancelable.java
│ │ │ │ ├── ChangeStreamRequest.java
│ │ │ │ ├── ChangeStreamTask.java
│ │ │ │ ├── CursorReadingTask.java
│ │ │ │ ├── DefaultMessageListenerContainer.java
│ │ │ │ ├── LazyMappingDelegatingMessage.java
│ │ │ │ ├── Message.java
│ │ │ │ ├── MessageListener.java
│ │ │ │ ├── MessageListenerContainer.java
│ │ │ │ ├── SimpleMessage.java
│ │ │ │ ├── Subscription.java
│ │ │ │ ├── SubscriptionRequest.java
│ │ │ │ ├── TailableCursorRequest.java
│ │ │ │ ├── TailableCursorTask.java
│ │ │ │ ├── Task.java
│ │ │ │ ├── TaskFactory.java
│ │ │ │ └── package-info.java
│ │ │ ├── package-info.java
│ │ │ ├── query
│ │ │ │ ├── BasicQuery.java
│ │ │ │ ├── BasicUpdate.java
│ │ │ │ ├── Collation.java
│ │ │ │ ├── Criteria.java
│ │ │ │ ├── CriteriaDefinition.java
│ │ │ │ ├── Field.java
│ │ │ │ ├── GeoCommand.java
│ │ │ │ ├── Meta.java
│ │ │ │ ├── MetricConversion.java
│ │ │ │ ├── MongoRegexCreator.java
│ │ │ │ ├── NearQuery.java
│ │ │ │ ├── Query.java
│ │ │ │ ├── SerializationUtils.java
│ │ │ │ ├── Term.java
│ │ │ │ ├── TextCriteria.java
│ │ │ │ ├── TextQuery.java
│ │ │ │ ├── UntypedExampleMatcher.java
│ │ │ │ ├── Update.java
│ │ │ │ ├── UpdateDefinition.java
│ │ │ │ └── package-info.java
│ │ │ ├── schema
│ │ │ │ ├── DefaultMongoJsonSchema.java
│ │ │ │ ├── DocumentJsonSchema.java
│ │ │ │ ├── IdentifiableJsonSchemaProperty.java
│ │ │ │ ├── JsonSchemaObject.java
│ │ │ │ ├── JsonSchemaProperty.java
│ │ │ │ ├── MergedJsonSchema.java
│ │ │ │ ├── MergedJsonSchemaProperty.java
│ │ │ │ ├── MongoJsonSchema.java
│ │ │ │ ├── QueryCharacteristic.java
│ │ │ │ ├── QueryCharacteristics.java
│ │ │ │ ├── TypeUnifyingMergeFunction.java
│ │ │ │ ├── TypedJsonSchemaObject.java
│ │ │ │ ├── UntypedJsonSchemaObject.java
│ │ │ │ └── package-info.java
│ │ │ ├── script
│ │ │ │ ├── ExecutableMongoScript.java
│ │ │ │ ├── NamedMongoScript.java
│ │ │ │ └── package-info.java
│ │ │ ├── spel
│ │ │ │ ├── ExpressionNode.java
│ │ │ │ ├── ExpressionTransformationContextSupport.java
│ │ │ │ ├── ExpressionTransformer.java
│ │ │ │ ├── LiteralNode.java
│ │ │ │ ├── MethodReferenceNode.java
│ │ │ │ ├── NotOperatorNode.java
│ │ │ │ ├── OperatorNode.java
│ │ │ │ └── package-info.java
│ │ │ ├── timeseries
│ │ │ │ ├── Granularity.java
│ │ │ │ └── GranularityDefinition.java
│ │ │ └── validation
│ │ │ │ ├── CriteriaValidator.java
│ │ │ │ ├── DocumentValidator.java
│ │ │ │ ├── JsonSchemaValidator.java
│ │ │ │ ├── Validator.java
│ │ │ │ └── package-info.java
│ │ │ ├── gridfs
│ │ │ ├── AntPath.java
│ │ │ ├── GridFsCriteria.java
│ │ │ ├── GridFsObject.java
│ │ │ ├── GridFsOperations.java
│ │ │ ├── GridFsOperationsSupport.java
│ │ │ ├── GridFsResource.java
│ │ │ ├── GridFsTemplate.java
│ │ │ ├── GridFsUpload.java
│ │ │ ├── ReactiveGridFsOperations.java
│ │ │ ├── ReactiveGridFsResource.java
│ │ │ ├── ReactiveGridFsTemplate.java
│ │ │ ├── ReactiveGridFsUpload.java
│ │ │ └── package-info.java
│ │ │ ├── observability
│ │ │ ├── ContextProviderFactory.java
│ │ │ ├── DefaultMongoHandlerObservationConvention.java
│ │ │ ├── MapRequestContext.java
│ │ │ ├── MongoHandlerContext.java
│ │ │ ├── MongoHandlerObservationConvention.java
│ │ │ ├── MongoObservation.java
│ │ │ ├── MongoObservationCommandListener.java
│ │ │ └── package-info.java
│ │ │ ├── package-info.java
│ │ │ ├── repository
│ │ │ ├── Aggregation.java
│ │ │ ├── CountQuery.java
│ │ │ ├── DeleteQuery.java
│ │ │ ├── ExistsQuery.java
│ │ │ ├── Hint.java
│ │ │ ├── Meta.java
│ │ │ ├── MongoRepository.java
│ │ │ ├── Near.java
│ │ │ ├── Query.java
│ │ │ ├── ReactiveMongoRepository.java
│ │ │ ├── ReadPreference.java
│ │ │ ├── Tailable.java
│ │ │ ├── Update.java
│ │ │ ├── VectorSearch.java
│ │ │ ├── aot
│ │ │ │ ├── AggregationInteraction.java
│ │ │ │ ├── AggregationUpdateInteraction.java
│ │ │ │ ├── AotMongoRepositoryPostProcessor.java
│ │ │ │ ├── AotQueryCreator.java
│ │ │ │ ├── MongoAotRepositoryFragmentSupport.java
│ │ │ │ ├── MongoCodeBlocks.java
│ │ │ │ ├── MongoInteraction.java
│ │ │ │ ├── MongoRepositoryContributor.java
│ │ │ │ ├── QueryInteraction.java
│ │ │ │ ├── RepositoryRuntimeHints.java
│ │ │ │ ├── StringAggregation.java
│ │ │ │ ├── StringQuery.java
│ │ │ │ ├── StringUpdate.java
│ │ │ │ ├── UpdateInteraction.java
│ │ │ │ └── package-info.java
│ │ │ ├── cdi
│ │ │ │ ├── MongoRepositoryBean.java
│ │ │ │ ├── MongoRepositoryExtension.java
│ │ │ │ └── package-info.java
│ │ │ ├── config
│ │ │ │ ├── EnableMongoRepositories.java
│ │ │ │ ├── EnableReactiveMongoRepositories.java
│ │ │ │ ├── MongoRepositoriesRegistrar.java
│ │ │ │ ├── MongoRepositoryConfigNamespaceHandler.java
│ │ │ │ ├── MongoRepositoryConfigurationExtension.java
│ │ │ │ ├── ReactiveMongoRepositoriesRegistrar.java
│ │ │ │ ├── ReactiveMongoRepositoryConfigurationExtension.java
│ │ │ │ └── package-info.java
│ │ │ ├── package-info.java
│ │ │ ├── query
│ │ │ │ ├── AbstractMongoQuery.java
│ │ │ │ ├── AbstractReactiveMongoQuery.java
│ │ │ │ ├── AggregationUtils.java
│ │ │ │ ├── BooleanUtil.java
│ │ │ │ ├── CollationUtils.java
│ │ │ │ ├── ConvertingParameterAccessor.java
│ │ │ │ ├── MongoEntityInformation.java
│ │ │ │ ├── MongoEntityMetadata.java
│ │ │ │ ├── MongoParameterAccessor.java
│ │ │ │ ├── MongoParameters.java
│ │ │ │ ├── MongoParametersParameterAccessor.java
│ │ │ │ ├── MongoQueryCreator.java
│ │ │ │ ├── MongoQueryExecution.java
│ │ │ │ ├── MongoQueryMethod.java
│ │ │ │ ├── PartTreeMongoQuery.java
│ │ │ │ ├── QueryUtils.java
│ │ │ │ ├── ReactiveMongoParameterAccessor.java
│ │ │ │ ├── ReactiveMongoQueryExecution.java
│ │ │ │ ├── ReactiveMongoQueryMethod.java
│ │ │ │ ├── ReactivePartTreeMongoQuery.java
│ │ │ │ ├── ReactiveStringBasedAggregation.java
│ │ │ │ ├── ReactiveStringBasedMongoQuery.java
│ │ │ │ ├── ReactiveVectorSearchAggregation.java
│ │ │ │ ├── SimpleMongoEntityMetadata.java
│ │ │ │ ├── StringAggregationOperation.java
│ │ │ │ ├── StringBasedAggregation.java
│ │ │ │ ├── StringBasedMongoQuery.java
│ │ │ │ ├── ValueExpressionDelegateValueExpressionEvaluator.java
│ │ │ │ ├── VectorSearchAggregation.java
│ │ │ │ ├── VectorSearchDelegate.java
│ │ │ │ └── package-info.java
│ │ │ ├── support
│ │ │ │ ├── CrudMethodMetadata.java
│ │ │ │ ├── CrudMethodMetadataPostProcessor.java
│ │ │ │ ├── FetchableFluentQuerySupport.java
│ │ │ │ ├── IndexEnsuringQueryCreationListener.java
│ │ │ │ ├── MappingMongoEntityInformation.java
│ │ │ │ ├── MongoAnnotationProcessor.java
│ │ │ │ ├── MongoEntityInformationSupport.java
│ │ │ │ ├── MongoRepositoryFactory.java
│ │ │ │ ├── MongoRepositoryFactoryBean.java
│ │ │ │ ├── MongoRepositoryFragmentsContributor.java
│ │ │ │ ├── QuerydslContributor.java
│ │ │ │ ├── QuerydslMongoPredicateExecutor.java
│ │ │ │ ├── QuerydslPredicateExecutorSupport.java
│ │ │ │ ├── QuerydslRepositorySupport.java
│ │ │ │ ├── ReactiveFluentQuerySupport.java
│ │ │ │ ├── ReactiveMongoRepositoryFactory.java
│ │ │ │ ├── ReactiveMongoRepositoryFactoryBean.java
│ │ │ │ ├── ReactiveMongoRepositoryFragmentsContributor.java
│ │ │ │ ├── ReactivePageableExecutionUtils.java
│ │ │ │ ├── ReactiveQuerydslContributor.java
│ │ │ │ ├── ReactiveQuerydslMongoPredicateExecutor.java
│ │ │ │ ├── ReactiveSpringDataMongodbQuery.java
│ │ │ │ ├── SimpleMongoRepository.java
│ │ │ │ ├── SimpleReactiveMongoRepository.java
│ │ │ │ ├── SpringDataMongodbQuery.java
│ │ │ │ ├── SpringDataMongodbQuerySupport.java
│ │ │ │ ├── SpringDataMongodbSerializer.java
│ │ │ │ └── package-info.java
│ │ │ └── util
│ │ │ │ └── SliceUtils.java
│ │ │ └── util
│ │ │ ├── BsonUtils.java
│ │ │ ├── DBObjectUtils.java
│ │ │ ├── DotPath.java
│ │ │ ├── DurationUtil.java
│ │ │ ├── EmptyDocument.java
│ │ │ ├── MongoClientVersion.java
│ │ │ ├── MongoDbErrorCodes.java
│ │ │ ├── RegexFlags.java
│ │ │ ├── SpringJsonWriter.java
│ │ │ ├── aggregation
│ │ │ └── TestAggregationContext.java
│ │ │ ├── encryption
│ │ │ └── EncryptionUtils.java
│ │ │ ├── json
│ │ │ ├── DateTimeFormatter.java
│ │ │ ├── EvaluationContextExpressionEvaluator.java
│ │ │ ├── JsonBuffer.java
│ │ │ ├── JsonScanner.java
│ │ │ ├── JsonToken.java
│ │ │ ├── JsonTokenType.java
│ │ │ ├── ParameterBindingContext.java
│ │ │ ├── ParameterBindingDocumentCodec.java
│ │ │ ├── ParameterBindingJsonReader.java
│ │ │ ├── ValueProvider.java
│ │ │ └── package-info.java
│ │ │ ├── package-info.java
│ │ │ └── spel
│ │ │ └── ExpressionUtils.java
│ ├── kotlin
│ │ └── org
│ │ │ └── springframework
│ │ │ └── data
│ │ │ └── mongodb
│ │ │ └── core
│ │ │ ├── BulkOperationsExtensions.kt
│ │ │ ├── ExecutableAggregationOperationExtensions.kt
│ │ │ ├── ExecutableFindOperationExtensions.kt
│ │ │ ├── ExecutableInsertOperationExtensions.kt
│ │ │ ├── ExecutableMapReduceOperationExtensions.kt
│ │ │ ├── ExecutableRemoveOperationExtensions.kt
│ │ │ ├── ExecutableUpdateOperationExtensions.kt
│ │ │ ├── MongoOperationsExtensions.kt
│ │ │ ├── ReactiveAggregationOperationExtensions.kt
│ │ │ ├── ReactiveChangeStreamOperationExtensions.kt
│ │ │ ├── ReactiveFindOperationExtensions.kt
│ │ │ ├── ReactiveInsertOperationExtensions.kt
│ │ │ ├── ReactiveMapReduceOperationExtensions.kt
│ │ │ ├── ReactiveMongoOperationsExtensions.kt
│ │ │ ├── ReactiveRemoveOperationExtensions.kt
│ │ │ ├── ReactiveUpdateOperationExtensions.kt
│ │ │ └── query
│ │ │ ├── CriteriaExtensions.kt
│ │ │ ├── TypedCriteriaExtensions.kt
│ │ │ └── TypedUpdateExtensions.kt
│ └── resources
│ │ ├── META-INF
│ │ ├── services
│ │ │ └── jakarta.enterprise.inject.spi.Extension
│ │ ├── spring.factories
│ │ ├── spring.handlers
│ │ ├── spring.schemas
│ │ ├── spring.tooling
│ │ └── spring
│ │ │ └── aot.factories
│ │ └── org
│ │ └── springframework
│ │ └── data
│ │ └── mongodb
│ │ └── config
│ │ ├── spring-mongo-1.0.xsd
│ │ ├── spring-mongo-1.1.xsd
│ │ ├── spring-mongo-1.10.2.xsd
│ │ ├── spring-mongo-1.10.xsd
│ │ ├── spring-mongo-1.2.xsd
│ │ ├── spring-mongo-1.3.xsd
│ │ ├── spring-mongo-1.4.xsd
│ │ ├── spring-mongo-1.5.xsd
│ │ ├── spring-mongo-1.7.xsd
│ │ ├── spring-mongo-1.8.xsd
│ │ ├── spring-mongo-2.0.xsd
│ │ ├── spring-mongo-2.2.xsd
│ │ ├── spring-mongo-3.0.xsd
│ │ ├── spring-mongo-3.3.xsd
│ │ ├── spring-mongo-4.0.xsd
│ │ └── spring-mongo-5.0.xsd
│ └── test
│ ├── java
│ ├── ConfigClassInDefaultPackage.java
│ ├── ConfigClassInDefaultPackageUnitTests.java
│ ├── example
│ │ ├── aot
│ │ │ ├── User.java
│ │ │ ├── UserProjection.java
│ │ │ └── UserRepository.java
│ │ ├── first
│ │ │ └── First.java
│ │ └── second
│ │ │ └── Second.java
│ └── org
│ │ └── springframework
│ │ └── data
│ │ └── mongodb
│ │ ├── CapturingTransactionOptionsResolver.java
│ │ ├── DefaultMongoTransactionOptionsResolverUnitTests.java
│ │ ├── DependencyTests.java
│ │ ├── MongoDatabaseUtilsUnitTests.java
│ │ ├── MongoTransactionManagerUnitTests.java
│ │ ├── MongoTransactionOptionsUnitTests.java
│ │ ├── ReactiveMongoDatabaseUtilsUnitTests.java
│ │ ├── ReactiveMongoTransactionManagerUnitTests.java
│ │ ├── ReactiveTransactionIntegrationTests.java
│ │ ├── ReactiveTransactionOptionsTestService.java
│ │ ├── SessionAwareMethodInterceptorUnitTests.java
│ │ ├── SpringDataMongoDBTests.java
│ │ ├── aot
│ │ ├── LazyLoadingProxyAotProcessorUnitTests.java
│ │ ├── MongoRuntimeHintsUnitTests.java
│ │ └── generated
│ │ │ └── DemoRepo.java
│ │ ├── classloading
│ │ └── HidingClassLoader.java
│ │ ├── config
│ │ ├── AbstractIntegrationTests.java
│ │ ├── AbstractMongoConfigurationUnitTests.java
│ │ ├── AbstractReactiveMongoConfigurationIntegrationTests.java
│ │ ├── AbstractReactiveMongoConfigurationUnitTests.java
│ │ ├── AuditingIntegrationTests.java
│ │ ├── AuditingViaJavaConfigRepositoriesTests.java
│ │ ├── CustomMongoTypeMapper.java
│ │ ├── GeoJsonConfigurationIntegrationTests.java
│ │ ├── MappingMongoConverterParserIntegrationTests.java
│ │ ├── MappingMongoConverterParserValidationIntegrationTests.java
│ │ ├── MongoAuditingRegistrarUnitTests.java
│ │ ├── MongoClientNamespaceTests.java
│ │ ├── MongoClientParserIntegrationTests.java
│ │ ├── MongoCredentialPropertyEditorUnitTests.java
│ │ ├── MongoDbFactoryNoDatabaseRunningTests.java
│ │ ├── MongoDbFactoryParserIntegrationTests.java
│ │ ├── MongoNamespaceReplicaSetTests.java
│ │ ├── MongoNamespaceTests.java
│ │ ├── MongoParserIntegrationTests.java
│ │ ├── ReactiveAuditingTests.java
│ │ ├── ReadPreferencePropertyEditorUnitTests.java
│ │ ├── ServerAddressPropertyEditorUnitTests.java
│ │ ├── StringToWriteConcernConverterUnitTests.java
│ │ └── WriteConcernPropertyEditorUnitTests.java
│ │ ├── core
│ │ ├── AuditablePerson.java
│ │ ├── BaseDoc.java
│ │ ├── ChangeStreamOptionsUnitTests.java
│ │ ├── ClientSessionTests.java
│ │ ├── CloseableIterableCursorAdapterUnitTests.java
│ │ ├── CollationUnitTests.java
│ │ ├── CollectionOptionsUnitTests.java
│ │ ├── CountQueryUnitTests.java
│ │ ├── DefaultBulkOperationsIntegrationTests.java
│ │ ├── DefaultBulkOperationsUnitTests.java
│ │ ├── DefaultIndexOperationsIntegrationTests.java
│ │ ├── DefaultIndexOperationsUnitTests.java
│ │ ├── DefaultReactiveBulkOperationsTests.java
│ │ ├── DefaultReactiveBulkOperationsUnitTests.java
│ │ ├── DefaultReactiveIndexOperationsTests.java
│ │ ├── DefaultReactiveIndexOperationsUnitTests.java
│ │ ├── DefaultScriptOperationsTests.java
│ │ ├── DefaultScriptOperationsUnitTests.java
│ │ ├── DocumentTestUtils.java
│ │ ├── EntityOperationsUnitTests.java
│ │ ├── ExecutableAggregationOperationSupportUnitTests.java
│ │ ├── ExecutableFindOperationSupportTests.java
│ │ ├── ExecutableInsertOperationSupportUnitTests.java
│ │ ├── ExecutableMapReduceOperationSupportUnitTests.java
│ │ ├── ExecutableRemoveOperationSupportTests.java
│ │ ├── ExecutableUpdateOperationSupportTests.java
│ │ ├── Friend.java
│ │ ├── GeoCommandStatisticsUnitTests.java
│ │ ├── JsonSchemaQueryTests.java
│ │ ├── MappingMongoJsonSchemaCreatorUnitTests.java
│ │ ├── MongoAdminIntegrationTests.java
│ │ ├── MongoClientFactoryBeanUnitTests.java
│ │ ├── MongoClientSettingsFactoryBeanIntegrationTests.java
│ │ ├── MongoClientSettingsFactoryBeanUnitTests.java
│ │ ├── MongoEncryptionSettingsFactoryBeanTests.java
│ │ ├── MongoExceptionTranslatorUnitTests.java
│ │ ├── MongoOperationsUnitTests.java
│ │ ├── MongoServerApiFactoryBeanTests.java
│ │ ├── MongoTemplateCollationTests.java
│ │ ├── MongoTemplateDbRefTests.java
│ │ ├── MongoTemplateDocumentReferenceTests.java
│ │ ├── MongoTemplateFieldProjectionTests.java
│ │ ├── MongoTemplateMappingTests.java
│ │ ├── MongoTemplateReplaceTests.java
│ │ ├── MongoTemplateScrollTests.java
│ │ ├── MongoTemplateTests.java
│ │ ├── MongoTemplateTransactionTests.java
│ │ ├── MongoTemplateUnitTests.java
│ │ ├── MongoTemplateUnwrappedTests.java
│ │ ├── MongoTemplateUpdateTests.java
│ │ ├── MongoTemplateValidationTests.java
│ │ ├── MongoTemplateViewTests.java
│ │ ├── NoExplicitIdTests.java
│ │ ├── Person.java
│ │ ├── PersonExample.java
│ │ ├── PersonExampleAppConfig.java
│ │ ├── PersonReadConverter.java
│ │ ├── PersonWithAList.java
│ │ ├── PersonWithIdPropertyOfPrimitiveInt.java
│ │ ├── PersonWithIdPropertyOfPrimitiveLong.java
│ │ ├── PersonWithIdPropertyOfTypeBigInteger.java
│ │ ├── PersonWithIdPropertyOfTypeInteger.java
│ │ ├── PersonWithIdPropertyOfTypeLong.java
│ │ ├── PersonWithIdPropertyOfTypeObjectId.java
│ │ ├── PersonWithIdPropertyOfTypeString.java
│ │ ├── PersonWithIdPropertyOfTypeUUID.java
│ │ ├── PersonWithVersionPropertyOfTypeInteger.java
│ │ ├── PersonWithVersionPropertyOfTypeLong.java
│ │ ├── PersonWith_idPropertyOfTypeObjectId.java
│ │ ├── PersonWith_idPropertyOfTypeString.java
│ │ ├── PersonWriteConverter.java
│ │ ├── Portfolio.java
│ │ ├── QueryByExampleTests.java
│ │ ├── QueryCursorPreparerUnitTests.java
│ │ ├── QueryOperationsUnitTests.java
│ │ ├── QueryResultConverterUnitTests.java
│ │ ├── ReactiveAggregationOperationSupportUnitTests.java
│ │ ├── ReactiveChangeStreamOperationSupportTests.java
│ │ ├── ReactiveChangeStreamOperationSupportUnitTests.java
│ │ ├── ReactiveClientSessionTests.java
│ │ ├── ReactiveFindOperationSupportTests.java
│ │ ├── ReactiveInsertOperationSupportUnitTests.java
│ │ ├── ReactiveMapReduceOperationSupportUnitTests.java
│ │ ├── ReactiveMongoTemplateCollationTests.java
│ │ ├── ReactiveMongoTemplateExecuteTests.java
│ │ ├── ReactiveMongoTemplateIndexTests.java
│ │ ├── ReactiveMongoTemplateReplaceTests.java
│ │ ├── ReactiveMongoTemplateScrollTests.java
│ │ ├── ReactiveMongoTemplateTests.java
│ │ ├── ReactiveMongoTemplateTransactionTests.java
│ │ ├── ReactiveMongoTemplateUnitTests.java
│ │ ├── ReactiveMongoTemplateUpdateTests.java
│ │ ├── ReactiveMongoTemplateViewTests.java
│ │ ├── ReactiveRemoveOperationSupportTests.java
│ │ ├── ReactiveSessionBoundMongoTemplateUnitTests.java
│ │ ├── ReactiveUpdateOperationSupportTests.java
│ │ ├── ScrollUtilsUnitTests.java
│ │ ├── SerializationUtilsUnitTests.java
│ │ ├── SessionBoundMongoTemplateTests.java
│ │ ├── SessionBoundMongoTemplateUnitTests.java
│ │ ├── ShardedEntityWithDefaultShardKey.java
│ │ ├── ShardedEntityWithNonDefaultImmutableShardKey.java
│ │ ├── ShardedEntityWithNonDefaultShardKey.java
│ │ ├── ShardedVersionedEntityWithNonDefaultShardKey.java
│ │ ├── SimpleMongoClientDatabaseFactoryUnitTests.java
│ │ ├── SimpleReactiveMongoDatabaseFactoryUnitTests.java
│ │ ├── SpecialDoc.java
│ │ ├── TestEntities.java
│ │ ├── TestMongoConfiguration.java
│ │ ├── Trade.java
│ │ ├── TradeBatch.java
│ │ ├── TransactionOptionsTestService.java
│ │ ├── UpdateOperationsUnitTests.java
│ │ ├── User.java
│ │ ├── Venue.java
│ │ ├── VerySpecialDoc.java
│ │ ├── aggregation
│ │ │ ├── AccumulatorOperatorsUnitTests.java
│ │ │ ├── AddFieldsOperationUnitTests.java
│ │ │ ├── AggregationOperationRendererUnitTests.java
│ │ │ ├── AggregationOptionsTests.java
│ │ │ ├── AggregationTests.java
│ │ │ ├── AggregationUnitTests.java
│ │ │ ├── AggregationUpdateUnitTests.java
│ │ │ ├── AggregationVariableUnitTests.java
│ │ │ ├── ArithmeticOperatorsUnitTests.java
│ │ │ ├── ArrayOperatorsUnitTests.java
│ │ │ ├── BasicAggregationOperationUnitTests.java
│ │ │ ├── BucketAutoOperationUnitTests.java
│ │ │ ├── BucketOperationUnitTests.java
│ │ │ ├── City.java
│ │ │ ├── CondExpressionUnitTests.java
│ │ │ ├── ConditionalOperatorsUnitTests.java
│ │ │ ├── ConvertOperatorsUnitTests.java
│ │ │ ├── CountOperationUnitTests.java
│ │ │ ├── Data.java
│ │ │ ├── DataItem.java
│ │ │ ├── DateOperatorsUnitTests.java
│ │ │ ├── DensifyOperationUnitTests.java
│ │ │ ├── DocumentOperatorsUnitTests.java
│ │ │ ├── EvaluationOperatorsUnitTests.java
│ │ │ ├── ExposedFieldsUnitTests.java
│ │ │ ├── FacetOperationUnitTests.java
│ │ │ ├── FieldsUnitTests.java
│ │ │ ├── FilterExpressionUnitTests.java
│ │ │ ├── GeoNearOperationUnitTests.java
│ │ │ ├── GraphLookupOperationUnitTests.java
│ │ │ ├── GroupOperationUnitTests.java
│ │ │ ├── Invoice.java
│ │ │ ├── LikeStats.java
│ │ │ ├── LineItem.java
│ │ │ ├── LookupOperationUnitTests.java
│ │ │ ├── MatchOperationUnitTests.java
│ │ │ ├── MergeOperationUnitTests.java
│ │ │ ├── MeterData.java
│ │ │ ├── ObjectOperatorsUnitTests.java
│ │ │ ├── Order.java
│ │ │ ├── OutOperationUnitTest.java
│ │ │ ├── Product.java
│ │ │ ├── ProjectionOperationUnitTests.java
│ │ │ ├── ReactiveAggregationTests.java
│ │ │ ├── ReactiveAggregationUnitTests.java
│ │ │ ├── RedactOperationUnitTests.java
│ │ │ ├── ReplaceRootOperationUnitTests.java
│ │ │ ├── ReplaceWithOperationUnitTests.java
│ │ │ ├── SampleOperationUnitTests.java
│ │ │ ├── ScriptOperatorsUnitTests.java
│ │ │ ├── SelectionOperatorUnitTests.java
│ │ │ ├── SetOperationUnitTests.java
│ │ │ ├── SetWindowFieldsOperationTests.java
│ │ │ ├── SetWindowFieldsOperationUnitTests.java
│ │ │ ├── SkipOperationUnitTests.java
│ │ │ ├── SortByCountOperationUnitTests.java
│ │ │ ├── SortOperationUnitTests.java
│ │ │ ├── SpelExpressionTransformerIntegrationTests.java
│ │ │ ├── SpelExpressionTransformerUnitTests.java
│ │ │ ├── StateStats.java
│ │ │ ├── StringOperatorsUnitTests.java
│ │ │ ├── TagCount.java
│ │ │ ├── TypeBasedAggregationOperationContextUnitTests.java
│ │ │ ├── UnionWithOperationUnitTests.java
│ │ │ ├── UnsetOperationUnitTests.java
│ │ │ ├── UnwindOperationUnitTests.java
│ │ │ ├── UserWithLikes.java
│ │ │ ├── VectorSearchOperationUnitTests.java
│ │ │ ├── VectorSearchTests.java
│ │ │ ├── ZipInfo.java
│ │ │ └── ZipInfoStats.java
│ │ ├── auditing
│ │ │ ├── MongoTemplateAuditingTests.java
│ │ │ └── ReactiveMongoTemplateAuditingTests.java
│ │ ├── convert
│ │ │ ├── AbstractMongoConverterUnitTests.java
│ │ │ ├── CustomConvertersUnitTests.java
│ │ │ ├── DataMongo273Tests.java
│ │ │ ├── DbRefMappingMongoConverterUnitTests.java
│ │ │ ├── DefaultDbRefResolverUnitTests.java
│ │ │ ├── DefaultMongoTypeMapperUnitTests.java
│ │ │ ├── DocumentAccessorUnitTests.java
│ │ │ ├── DocumentPointerFactoryUnitTests.java
│ │ │ ├── GeoConvertersUnitTests.java
│ │ │ ├── GeoJsonConverterUnitTests.java
│ │ │ ├── LazyLoadingInterceptorUnitTests.java
│ │ │ ├── LazyLoadingTestUtils.java
│ │ │ ├── MappingMongoConverterTests.java
│ │ │ ├── MappingMongoConverterUnitTests.java
│ │ │ ├── MongoConvertersIntegrationTests.java
│ │ │ ├── MongoConvertersUnitTests.java
│ │ │ ├── MongoCustomConversionsUnitTests.java
│ │ │ ├── MongoExampleMapperUnitTests.java
│ │ │ ├── MongoJsonSchemaMapperUnitTests.java
│ │ │ ├── NamedMongoScriptConvertsUnitTests.java
│ │ │ ├── NumberToNumberConverterFactoryUnitTests.java
│ │ │ ├── ObjectPathUnitTests.java
│ │ │ ├── QueryMapperUnitTests.java
│ │ │ ├── ReferenceLookupDelegateUnitTests.java
│ │ │ ├── ReversingValueConverter.java
│ │ │ ├── TermToStringConverterUnitTests.java
│ │ │ └── UpdateMapperUnitTests.java
│ │ ├── encryption
│ │ │ ├── AbstractEncryptionTestBase.java
│ │ │ ├── BypassAutoEncryptionTest.java
│ │ │ ├── EncryptionKeyResolverUnitTests.java
│ │ │ ├── EncryptionKeyUnitTests.java
│ │ │ ├── EncryptionTests.java
│ │ │ ├── MongoClientEncryptionUnitTests.java
│ │ │ ├── MongoEncryptionConverterUnitTests.java
│ │ │ ├── MongoQueryableEncryptionCollectionCreationTests.java
│ │ │ └── RangeEncryptionTests.java
│ │ ├── geo
│ │ │ ├── AbstractGeoSpatialTests.java
│ │ │ ├── GeoJsonModuleUnitTests.java
│ │ │ ├── GeoJsonSerializersUnitTests.java
│ │ │ ├── GeoJsonTests.java
│ │ │ ├── GeoSpatial2DSphereTests.java
│ │ │ ├── GeoSpatial2DTests.java
│ │ │ └── GeoSpatialIndexTests.java
│ │ ├── index
│ │ │ ├── IndexFieldUnitTests.java
│ │ │ ├── IndexInfoUnitTests.java
│ │ │ ├── IndexOptionsUnitTests.java
│ │ │ ├── IndexingIntegrationTests.java
│ │ │ ├── MongoPersistentEntityIndexCreatorIntegrationTests.java
│ │ │ ├── MongoPersistentEntityIndexCreatorUnitTests.java
│ │ │ ├── MongoPersistentEntityIndexResolverUnitTests.java
│ │ │ ├── PathUnitTests.java
│ │ │ ├── ReactiveMongoPersistentEntityIndexCreatorUnitTests.java
│ │ │ ├── SampleEntity.java
│ │ │ ├── SearchIndexInfoUnitTests.java
│ │ │ ├── TextIndexTests.java
│ │ │ └── VectorIndexIntegrationTests.java
│ │ ├── mapping
│ │ │ ├── Account.java
│ │ │ ├── AccountPojo.java
│ │ │ ├── Address.java
│ │ │ ├── BasePerson.java
│ │ │ ├── BasicMongoPersistentEntityUnitTests.java
│ │ │ ├── BasicMongoPersistentPropertyUnitTests.java
│ │ │ ├── CustomCollectionWithIndex.java
│ │ │ ├── DetectedCollectionWithIndex.java
│ │ │ ├── GeneratedId.java
│ │ │ ├── GenericMappingTests.java
│ │ │ ├── GeoIndexedAppConfig.java
│ │ │ ├── GeoIndexedTests.java
│ │ │ ├── GeoLocation.java
│ │ │ ├── Location.java
│ │ │ ├── MappingTests.java
│ │ │ ├── MongoMappingContextUnitTests.java
│ │ │ ├── MongoPersistentPropertyComparatorUnitTests.java
│ │ │ ├── MongoVectorUnitTests.java
│ │ │ ├── Person.java
│ │ │ ├── PersonCustomCollection1.java
│ │ │ ├── PersonCustomCollection2.java
│ │ │ ├── PersonCustomIdName.java
│ │ │ ├── PersonMapProperty.java
│ │ │ ├── PersonMultiCollection.java
│ │ │ ├── PersonMultiDimArrays.java
│ │ │ ├── PersonNullProperties.java
│ │ │ ├── PersonPojoIntId.java
│ │ │ ├── PersonPojoLongId.java
│ │ │ ├── PersonPojoStringId.java
│ │ │ ├── PersonSimpleList.java
│ │ │ ├── PersonWithDbRef.java
│ │ │ ├── PersonWithLongDBRef.java
│ │ │ ├── PersonWithObjectId.java
│ │ │ ├── PrimitiveId.java
│ │ │ └── event
│ │ │ │ ├── AbstractMongoEventListenerUnitTests.java
│ │ │ │ ├── AfterSaveListener.java
│ │ │ │ ├── ApplicationContextEventTests.java
│ │ │ │ ├── ApplicationContextEventTestsAppConfig.java
│ │ │ │ ├── AuditingEntityCallbackUnitTests.java
│ │ │ │ ├── LoggingEventListenerTests.java
│ │ │ │ ├── PersonBeforeSaveListener.java
│ │ │ │ ├── ReactiveValidatingEntityCallbackUnitTests.java
│ │ │ │ ├── SimpleMappingEventListener.java
│ │ │ │ ├── User.java
│ │ │ │ ├── ValidatingEntityCallbackUnitTests.java
│ │ │ │ └── ValidatingMongoEventListenerTests.java
│ │ ├── mapreduce
│ │ │ ├── ContentAndVersion.java
│ │ │ ├── MapReduceCountsUnitTests.java
│ │ │ ├── MapReduceOptionsTests.java
│ │ │ ├── MapReduceResultsUnitTests.java
│ │ │ ├── MapReduceTests.java
│ │ │ ├── NumberAndVersion.java
│ │ │ ├── ReactiveMapReduceTests.java
│ │ │ ├── ValueObject.java
│ │ │ └── XObject.java
│ │ ├── messaging
│ │ │ ├── ChangeStreamTaskUnitTests.java
│ │ │ ├── ChangeStreamTests.java
│ │ │ ├── CursorReadingTaskUnitTests.java
│ │ │ ├── DefaultMessageListenerContainerTests.java
│ │ │ ├── DefaultMessageListenerContainerUnitTests.java
│ │ │ ├── SubscriptionUtils.java
│ │ │ ├── TailableCursorRequestUnitTests.java
│ │ │ ├── TailableCursorTests.java
│ │ │ └── TaskFactoryUnitTests.java
│ │ ├── query
│ │ │ ├── BasicQueryUnitTests.java
│ │ │ ├── BasicUpdateUnitTests.java
│ │ │ ├── CriteriaTests.java
│ │ │ ├── CriteriaUnitTests.java
│ │ │ ├── FieldUnitTests.java
│ │ │ ├── IndexUnitTests.java
│ │ │ ├── MetricConversionUnitTests.java
│ │ │ ├── MongoRegexCreatorUnitTests.java
│ │ │ ├── NearQueryUnitTests.java
│ │ │ ├── QueryTests.java
│ │ │ ├── SortTests.java
│ │ │ ├── TextCriteriaUnitTests.java
│ │ │ ├── TextQueryTests.java
│ │ │ ├── TextQueryUnitTests.java
│ │ │ ├── UntypedExampleMatcherUnitTests.java
│ │ │ └── UpdateTests.java
│ │ ├── schema
│ │ │ ├── JsonSchemaObjectUnitTests.java
│ │ │ ├── JsonSchemaPropertyUnitTests.java
│ │ │ ├── MongoJsonSchemaTests.java
│ │ │ ├── MongoJsonSchemaUnitTests.java
│ │ │ ├── ReactiveMongoJsonSchemaTests.java
│ │ │ └── TypeUnifyingMergeFunctionUnitTests.java
│ │ ├── script
│ │ │ ├── ExecutableMongoScriptUnitTests.java
│ │ │ └── NamedMongoScriptUnitTests.java
│ │ ├── spel
│ │ │ └── ExpressionNodeUnitTests.java
│ │ └── validation
│ │ │ └── CriteriaValidatorUnitTests.java
│ │ ├── example
│ │ ├── MongoApplication.java
│ │ ├── Person.java
│ │ └── ReactiveMongoApplication.java
│ │ ├── gridfs
│ │ ├── AntPathUnitTests.java
│ │ ├── GridFsResourceUnitTests.java
│ │ ├── GridFsTemplateIntegrationTests.java
│ │ ├── GridFsTemplateUnitTests.java
│ │ ├── ReactiveGridFsResourceUnitTests.java
│ │ ├── ReactiveGridFsTemplateTests.java
│ │ └── ReactiveGridFsTemplateUnitTests.java
│ │ ├── observability
│ │ ├── ImperativeIntegrationTests.java
│ │ ├── MongoObservationCommandListenerTests.java
│ │ ├── ReactiveIntegrationTests.java
│ │ └── TestConfig.java
│ │ ├── performance
│ │ ├── PerformanceTests.java
│ │ └── ReactivePerformanceTests.java
│ │ ├── repository
│ │ ├── AbstractPersonRepositoryIntegrationTests.java
│ │ ├── Address.java
│ │ ├── ComplexIdRepositoryIntegrationTests.java
│ │ ├── Contact.java
│ │ ├── ContactRepository.java
│ │ ├── ContactRepositoryIntegrationTests.java
│ │ ├── ConvertingReactiveMongoRepositoryTests.java
│ │ ├── Credentials.java
│ │ ├── MongoRepositoryTextSearchIntegrationTests.java
│ │ ├── MyId.java
│ │ ├── Person.java
│ │ ├── PersonAggregate.java
│ │ ├── PersonExcerpt.java
│ │ ├── PersonRepository.java
│ │ ├── PersonRepositoryIntegrationTests.java
│ │ ├── PersonRepositoryLazyLoadingIntegrationTests.java
│ │ ├── PersonRepositoryTransactionalTests.java
│ │ ├── PersonSummary.java
│ │ ├── PersonSummaryDto.java
│ │ ├── PersonSummaryWithOptional.java
│ │ ├── ReactiveMongoRepositoryTests.java
│ │ ├── ReactivePersonRepository.java
│ │ ├── ReactiveVectorSearchTests.java
│ │ ├── RedeclaringRepositoryMethodsRepository.java
│ │ ├── RedeclaringRepositoryMethodsTests.java
│ │ ├── RepositoryIndexCreationIntegrationTests.java
│ │ ├── SampleEvaluationContextExtension.java
│ │ ├── SimpleReactiveMongoRepositoryTests.java
│ │ ├── SumAge.java
│ │ ├── User.java
│ │ ├── UserWithComplexId.java
│ │ ├── UserWithComplexIdRepository.java
│ │ ├── UsernameAndPassword.java
│ │ ├── VectorSearchTests.java
│ │ ├── VersionedPerson.java
│ │ ├── VersionedPersonRepositoryIntegrationTests.java
│ │ ├── aot
│ │ │ ├── AotContributionIntegrationTests.java
│ │ │ ├── AotFragmentTestConfigurationSupport.java
│ │ │ ├── MongoRepositoryContributorTests.java
│ │ │ ├── MongoRepositoryContributorUnitTests.java
│ │ │ ├── MongoRepositoryMetadataTests.java
│ │ │ ├── ReactiveAotContributionIntegrationTests.java
│ │ │ ├── RepositoryRuntimeHintsUnitTests.java
│ │ │ ├── StubRepositoryInformation.java
│ │ │ └── TestMongoAotRepositoryContext.java
│ │ ├── cdi
│ │ │ ├── CdiExtensionIntegrationTests.java
│ │ │ ├── CdiPersonRepository.java
│ │ │ ├── MongoTemplateProducer.java
│ │ │ ├── RepositoryClient.java
│ │ │ ├── SamplePersonFragment.java
│ │ │ ├── SamplePersonFragmentImpl.java
│ │ │ └── SamplePersonRepository.java
│ │ ├── config
│ │ │ ├── MongoNamespaceIntegrationTests.java
│ │ │ ├── MongoRepositoriesRegistrarIntegrationTests.java
│ │ │ ├── MongoRepositoriesRegistrarUnitTests.java
│ │ │ ├── MongoRepositoryConfigurationExtensionUnitTests.java
│ │ │ ├── ReactiveMongoRepositoriesRegistrarIntegrationTests.java
│ │ │ ├── ReactiveMongoRepositoriesRegistrarUnitTests.java
│ │ │ ├── ReactiveMongoRepositoryConfigurationExtensionUnitTests.java
│ │ │ └── lazy
│ │ │ │ ├── AllowNestedMongoRepositoriesRepositoryConfigTests.java
│ │ │ │ ├── ClassWithNestedRepository.java
│ │ │ │ └── NestedMongoRepositoriesJavaConfigTests.java
│ │ ├── custom
│ │ │ ├── ComposedRepository.java
│ │ │ ├── ComposedRepositoryImplementationTests.java
│ │ │ ├── CustomMongoRepository.java
│ │ │ ├── CustomMongoRepositoryImpl.java
│ │ │ ├── CustomReactiveMongoRepository.java
│ │ │ ├── CustomReactiveMongoRepositoryCustom.java
│ │ │ ├── CustomReactiveMongoRepositoryImpl.java
│ │ │ ├── CustomReactiveRepositoryImplementationTests.java
│ │ │ ├── CustomRepositoryImplementationTests.java
│ │ │ ├── RepositoryMixin.java
│ │ │ └── RepositoryMixinImpl.java
│ │ ├── query
│ │ │ ├── AbstractMongoQueryUnitTests.java
│ │ │ ├── AbstractReactiveMongoQueryUnitTests.java
│ │ │ ├── ConvertingParameterAccessorUnitTests.java
│ │ │ ├── MappingMongoEntityInformationUnitTests.java
│ │ │ ├── MongoParametersParameterAccessorUnitTests.java
│ │ │ ├── MongoParametersUnitTests.java
│ │ │ ├── MongoQueryCreatorUnitTests.java
│ │ │ ├── MongoQueryExecutionUnitTests.java
│ │ │ ├── MongoQueryMethodUnitTests.java
│ │ │ ├── PartTreeMongoQueryUnitTests.java
│ │ │ ├── ReactiveMongoQueryExecutionUnitTests.java
│ │ │ ├── ReactiveMongoQueryMethodUnitTests.java
│ │ │ ├── ReactiveStringBasedAggregationUnitTests.java
│ │ │ ├── ReactiveStringBasedMongoQueryUnitTests.java
│ │ │ ├── StringBasedAggregationOperationUnitTests.java
│ │ │ ├── StringBasedAggregationUnitTests.java
│ │ │ ├── StringBasedMongoQueryUnitTests.java
│ │ │ ├── StubParameterAccessor.java
│ │ │ ├── VectorSearchAggregationUnitTests.java
│ │ │ └── VectorSearchDelegateUnitTests.java
│ │ ├── support
│ │ │ ├── DefaultCrudMethodMetadataUnitTests.java
│ │ │ ├── IndexEnsuringQueryCreationListenerUnitTests.java
│ │ │ ├── MongoRepositoryFactoryBeanUnitTests.java
│ │ │ ├── MongoRepositoryFactoryUnitTests.java
│ │ │ ├── MongoRepositoryFragmentsContributorUnitTests.java
│ │ │ ├── QuerydslMongoPredicateExecutorIntegrationTests.java
│ │ │ ├── QuerydslRepositorySupportTests.java
│ │ │ ├── ReactiveMongoRepositoryFactoryUnitTests.java
│ │ │ ├── ReactiveMongoRepositoryFragmentsContributorUnitTests.java
│ │ │ ├── ReactiveQuerydslMongoPredicateExecutorTests.java
│ │ │ ├── SimpleMongoRepositoryTests.java
│ │ │ ├── SimpleMongoRepositoryUnitTests.java
│ │ │ ├── SimpleMongoRepositoryVersionedEntityTests.java
│ │ │ ├── SimpleReactiveMongoRepositoryUnitTests.java
│ │ │ ├── SimpleReactiveMongoRepositoryVersionedEntityTests.java
│ │ │ └── SpringDataMongodbSerializerUnitTests.java
│ │ └── util
│ │ │ └── SliceUtilsUnitTests.java
│ │ ├── test
│ │ └── util
│ │ │ ├── AfterTransactionAssertion.java
│ │ │ ├── AssertErrors.java
│ │ │ ├── Assertions.java
│ │ │ ├── AtlasContainer.java
│ │ │ ├── BasicDbListBuilder.java
│ │ │ ├── ClassPathExclusions.java
│ │ │ ├── ClassPathExclusionsExtension.java
│ │ │ ├── CleanMongoDB.java
│ │ │ ├── CleanMongoDBJunitRunListener.java
│ │ │ ├── CleanMongoDBTests.java
│ │ │ ├── Client.java
│ │ │ ├── CollectionInfo.java
│ │ │ ├── DirtiesStateExtension.java
│ │ │ ├── DocumentAssert.java
│ │ │ ├── EnableIfMongoServerVersion.java
│ │ │ ├── EnableIfReplicaSetAvailable.java
│ │ │ ├── EnableIfVectorSearchAvailable.java
│ │ │ ├── ExcludeReactiveClientFromClassPath.java
│ │ │ ├── ExcludeSyncClientFromClassPath.java
│ │ │ ├── MappingContextConfigurer.java
│ │ │ ├── MongoClientClosingTestConfiguration.java
│ │ │ ├── MongoClientExtension.java
│ │ │ ├── MongoConverterConfigurer.java
│ │ │ ├── MongoExtensions.java
│ │ │ ├── MongoServerCondition.java
│ │ │ ├── MongoTemplateExtension.java
│ │ │ ├── MongoTestMappingContext.java
│ │ │ ├── MongoTestTemplate.java
│ │ │ ├── MongoTestTemplateConfiguration.java
│ │ │ ├── MongoTestUtils.java
│ │ │ ├── MongoVersion.java
│ │ │ ├── MongoVersionRule.java
│ │ │ ├── PackageExcludingClassLoader.java
│ │ │ ├── ReactiveMongoClientClosingTestConfiguration.java
│ │ │ ├── ReactiveMongoTestTemplate.java
│ │ │ ├── ReplSetClient.java
│ │ │ ├── ReplicaSet.java
│ │ │ └── Template.java
│ │ └── util
│ │ ├── MongoClientVersionUnitTests.java
│ │ ├── SpringJsonWriterUnitTests.java
│ │ └── json
│ │ ├── BsonUtilsTest.java
│ │ └── ParameterBindingJsonReaderUnitTests.java
│ ├── kotlin
│ └── org
│ │ └── springframework
│ │ └── data
│ │ └── mongodb
│ │ ├── core
│ │ ├── BulkOperationExtensionsTests.kt
│ │ ├── Entities.kt
│ │ ├── ExecutableAggregationOperationExtensionsTests.kt
│ │ ├── ExecutableFindOperationExtensionsTests.kt
│ │ ├── ExecutableInsertOperationExtensionsTests.kt
│ │ ├── ExecutableMapReduceOperationExtensionsTests.kt
│ │ ├── ExecutableRemoveOperationExtensionsTests.kt
│ │ ├── ExecutableUpdateOperationExtensionsTests.kt
│ │ ├── MongoOperationsExtensionsTests.kt
│ │ ├── ReactiveAggregationOperationExtensionsTests.kt
│ │ ├── ReactiveChangeStreamOperationExtensionsTests.kt
│ │ ├── ReactiveFindOperationExtensionsTests.kt
│ │ ├── ReactiveInsertOperationExtensionsTests.kt
│ │ ├── ReactiveMapReduceOperationExtensionsTests.kt
│ │ ├── ReactiveMongoOperationsExtensionsTests.kt
│ │ ├── ReactiveRemoveOperationExtensionsTests.kt
│ │ ├── ReactiveUpdateOperationExtensionsTests.kt
│ │ ├── convert
│ │ │ ├── MappingMongoConverterKtUnitTests.kt
│ │ │ └── SpecialTransaction.kt
│ │ └── query
│ │ │ ├── CriteriaExtensionsTests.kt
│ │ │ ├── TypedCriteriaExtensionsTests.kt
│ │ │ └── TypedUpdateExtensionsTests.kt
│ │ └── repository
│ │ ├── CoroutineRepositoryUnitTests.kt
│ │ ├── KotlinRepositoryUnitTests.kt
│ │ └── query
│ │ └── ReactiveMongoQueryMethodCoroutineUnitTests.kt
│ └── resources
│ ├── META-INF
│ └── mongo-named-queries.properties
│ ├── geospatial.xml
│ ├── gridfs
│ ├── another-resource.xml
│ ├── gridfs.xml
│ └── reactive-gridfs.xml
│ ├── groupReduce.js
│ ├── infrastructure.xml
│ ├── keyFunction.js
│ ├── logback.xml
│ ├── logging.properties
│ ├── map.js
│ ├── namespace
│ ├── converter-custom-fieldnamingstrategy.xml
│ ├── converter-custom-typeMapper.xml
│ ├── converter-default.xml
│ ├── converter-invalid.xml
│ ├── converter-nested-bean-definition.xml
│ ├── converter-validation-disabled.xml
│ ├── converter-validation-enabled.xml
│ ├── converter.xml
│ ├── db-factory-bean-custom-write-concern.xml
│ ├── db-factory-bean.xml
│ ├── mongo-bean.xml
│ ├── mongo-client-uri-and-id.xml
│ ├── mongo-client-uri.xml
│ ├── mongo-uri-and-id.xml
│ ├── mongo-uri-no-credentials.xml
│ ├── mongo-uri-write-concern-and-details.xml
│ └── mongoClient-bean.xml
│ ├── org
│ └── springframework
│ │ └── data
│ │ └── mongodb
│ │ ├── MongoBeanPropertyDocumentMapper-context.xml
│ │ ├── config
│ │ ├── MongoClientNamespaceTests-context.xml
│ │ ├── MongoDbFactoryNoDatabaseRunningTests-context.xml
│ │ ├── MongoNamespaceReplicaSetTests-context.xml
│ │ ├── MongoNamespaceTests-context.xml
│ │ ├── auditing.xml
│ │ └── mongo.properties
│ │ ├── core
│ │ ├── index
│ │ │ └── MongoPersistentEntityIndexCreatorIntegrationTests-context.xml
│ │ └── mapping
│ │ │ └── event
│ │ │ └── ValidatingMongoEventListenerTests-context.xml
│ │ ├── monitor
│ │ └── MongoMonitorIntegrationTests-context.xml
│ │ └── repository
│ │ ├── PersonRepositoryIntegrationTests-context.xml
│ │ ├── RepositoryIndexCreationIntegrationTests-context.xml
│ │ ├── config
│ │ ├── MongoNamespaceIntegrationTests-context.xml
│ │ └── lazy
│ │ │ └── AllowNestedMongoRepositoriesRepositoryConfigTests-context.xml
│ │ └── mongo.properties
│ ├── reactive-infrastructure.xml
│ ├── reduce.js
│ ├── replicaSet.properties
│ ├── template-mapping.xml
│ └── zips.json
└── src
└── main
├── antora
├── antora-playbook.yml
├── antora.yml
├── modules
│ └── ROOT
│ │ ├── assets
│ │ └── images
│ │ │ └── jconsole.png
│ │ ├── examples
│ │ └── example
│ │ ├── nav.adoc
│ │ ├── pages
│ │ ├── commons
│ │ │ └── upgrade.adoc
│ │ ├── index.adoc
│ │ ├── kotlin.adoc
│ │ ├── kotlin
│ │ │ ├── coroutines.adoc
│ │ │ ├── extensions.adoc
│ │ │ ├── null-safety.adoc
│ │ │ └── requirements.adoc
│ │ ├── migration-guide
│ │ │ ├── migration-guide-2.x-to-3.x.adoc
│ │ │ └── migration-guide-3.x-to-4.x.adoc
│ │ ├── migration-guides.adoc
│ │ ├── mongodb.adoc
│ │ ├── mongodb
│ │ │ ├── aggregation-framework.adoc
│ │ │ ├── aot.adoc
│ │ │ ├── auditing.adoc
│ │ │ ├── change-streams.adoc
│ │ │ ├── client-session-transactions.adoc
│ │ │ ├── collation.adoc
│ │ │ ├── configuration.adoc
│ │ │ ├── converters-type-mapping.adoc
│ │ │ ├── geo-json.adoc
│ │ │ ├── getting-started.adoc
│ │ │ ├── jmx.adoc
│ │ │ ├── lifecycle-events.adoc
│ │ │ ├── mapping
│ │ │ │ ├── custom-conversions.adoc
│ │ │ │ ├── document-references.adoc
│ │ │ │ ├── mapping-index-management.adoc
│ │ │ │ ├── mapping-schema.adoc
│ │ │ │ ├── mapping.adoc
│ │ │ │ ├── property-converters.adoc
│ │ │ │ └── unwrapping-entities.adoc
│ │ │ ├── mongo-encryption.adoc
│ │ │ ├── mongo-group.adoc
│ │ │ ├── mongo-mapreduce.adoc
│ │ │ ├── mongo-search-indexes.adoc
│ │ │ ├── mongo-server-side-scripts.adoc
│ │ │ ├── repositories
│ │ │ │ ├── cdi-integration.adoc
│ │ │ │ ├── modifying-methods.adoc
│ │ │ │ ├── query-methods.adoc
│ │ │ │ ├── repositories.adoc
│ │ │ │ └── vector-search.adoc
│ │ │ ├── sharding.adoc
│ │ │ ├── tailable-cursors.adoc
│ │ │ ├── template-api.adoc
│ │ │ ├── template-collection-management.adoc
│ │ │ ├── template-config.adoc
│ │ │ ├── template-crud-operations.adoc
│ │ │ ├── template-document-count.adoc
│ │ │ ├── template-gridfs.adoc
│ │ │ ├── template-query-operations.adoc
│ │ │ └── value-expressions.adoc
│ │ ├── observability
│ │ │ ├── conventions.adoc
│ │ │ ├── metrics.adoc
│ │ │ ├── observability.adoc
│ │ │ └── spans.adoc
│ │ ├── preface.adoc
│ │ ├── repositories.adoc
│ │ └── repositories
│ │ │ ├── core-concepts.adoc
│ │ │ ├── core-domain-events.adoc
│ │ │ ├── core-extensions.adoc
│ │ │ ├── create-instances.adoc
│ │ │ ├── custom-implementations.adoc
│ │ │ ├── definition.adoc
│ │ │ ├── null-handling.adoc
│ │ │ ├── projections.adoc
│ │ │ ├── query-by-example.adoc
│ │ │ ├── query-keywords-reference.adoc
│ │ │ ├── query-methods-details.adoc
│ │ │ └── query-return-types-reference.adoc
│ │ └── partials
│ │ ├── vector-search-intro-include.adoc
│ │ ├── vector-search-method-annotated-include.adoc
│ │ ├── vector-search-method-derived-include.adoc
│ │ ├── vector-search-model-include.adoc
│ │ ├── vector-search-repository-include.adoc
│ │ ├── vector-search-scoring-include.adoc
│ │ └── vector-search.adoc
└── resources
│ └── antora-resources
│ └── antora.yml
└── resources
├── license.txt
└── notice.txt
/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 |
7 |
8 | - [ ] You have read the [Spring Data contribution guidelines](https://github.com/spring-projects/spring-data-build/blob/master/CONTRIBUTING.adoc).
9 | - [ ] You use the code formatters provided [here](https://github.com/spring-projects/spring-data-build/tree/master/etc/ide) and have them applied to your changes. Don’t submit any formatting related changes.
10 | - [ ] You submit test cases (unit or integration tests) that back your changes.
11 | - [ ] You added yourself as author in the headers of the classes you touched. Amend the date range in the Apache license header if needed. For new types, add the license header (copy from another file and set the current year only).
12 |
--------------------------------------------------------------------------------
/.github/dco.yml:
--------------------------------------------------------------------------------
1 | require:
2 | members: false
3 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | *.iml
3 | *.ipr
4 | *.iws
5 | *.orig
6 | target
7 | .springBeans
8 | .sonar4clipse
9 | *.sonar4clipseExternals
10 | .ant-targets-build.xml
11 | .settings/
12 | .project
13 | .classpath
14 | src/ant/.ant-targets-upload-dist.xml
15 | atlassian-ide-plugin.xml
16 | /.gradle/
17 | /.idea/
18 | *.graphml
19 | build/
20 | node_modules
21 | node
22 | package-lock.json
23 | .mvn/.develocity
24 |
--------------------------------------------------------------------------------
/.mvn/extensions.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | io.spring.develocity.conventions
5 | develocity-conventions-maven-extension
6 | 0.0.22
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.mvn/jvm.config:
--------------------------------------------------------------------------------
1 | --add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
2 | --add-exports jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
3 | --add-exports jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
4 | --add-exports jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
5 | --add-exports jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
6 | --add-exports jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
7 | --add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
8 | --add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
9 | --add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
10 | --add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED
11 | --add-opens=java.base/java.util=ALL-UNNAMED
12 | --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
13 | --add-opens=java.base/java.text=ALL-UNNAMED
14 | --add-opens=java.desktop/java.awt.font=ALL-UNNAMED
15 |
--------------------------------------------------------------------------------
/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/spring-projects/spring-data-mongodb/4e53fa792e8582e19ea7498ee353a8bc0dbaa3a2/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Thu Nov 07 09:47:19 CET 2024
2 | distributionUrl=https\://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip
3 |
--------------------------------------------------------------------------------
/CONTRIBUTING.adoc:
--------------------------------------------------------------------------------
1 | = Spring Data contribution guidelines
2 |
3 | You find the contribution guidelines for Spring Data projects https://github.com/spring-projects/spring-data-build/blob/main/CONTRIBUTING.adoc[here].
4 |
--------------------------------------------------------------------------------
/SECURITY.adoc:
--------------------------------------------------------------------------------
1 | # Security Policy
2 |
3 | ## Supported Versions
4 |
5 | Please see the https://spring.io/projects/spring-data-mongodb[Spring Data MongoDB] project page for supported versions.
6 |
7 | ## Reporting a Vulnerability
8 |
9 | Please don't raise security vulnerabilities here. Head over to https://pivotal.io/security to learn how to disclose them responsibly.
10 |
--------------------------------------------------------------------------------
/ci/openjdk24-mongodb-8.0/Dockerfile:
--------------------------------------------------------------------------------
1 | ARG BASE
2 | FROM ${BASE}
3 | # Any ARG statements before FROM are cleared.
4 | ARG MONGODB
5 |
6 | ENV TZ=Etc/UTC
7 | ENV DEBIAN_FRONTEND=noninteractive
8 | ENV MONGO_VERSION=${MONGODB}
9 |
10 | RUN set -eux; \
11 | sed -i -e 's/archive.ubuntu.com/mirror.one.com/g' /etc/apt/sources.list && \
12 | sed -i -e 's/security.ubuntu.com/mirror.one.com/g' /etc/apt/sources.list && \
13 | sed -i -e 's/ports.ubuntu.com/mirrors.ocf.berkeley.edu/g' /etc/apt/sources.list && \
14 | sed -i -e 's/http/https/g' /etc/apt/sources.list && \
15 | apt-get update && apt-get install -y apt-transport-https apt-utils gnupg2 wget && \
16 | # MongoDB 8.0 release signing key
17 | wget -qO - https://www.mongodb.org/static/pgp/server-8.0.asc | apt-key add - && \
18 | # Needed when MongoDB creates a 8.0 folder.
19 | echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-8.0.list && \
20 | echo ${TZ} > /etc/timezone
21 |
22 | RUN apt-get update && \
23 | apt-get install -y mongodb-org=${MONGODB} mongodb-org-server=${MONGODB} mongodb-org-shell=${MONGODB} mongodb-org-mongos=${MONGODB} mongodb-org-tools=${MONGODB} && \
24 | apt-get clean && \
25 | rm -rf /var/lib/apt/lists/*
26 |
--------------------------------------------------------------------------------
/ci/pipeline.properties:
--------------------------------------------------------------------------------
1 | # Java versions
2 | java.main.tag=24.0.1_9-jdk-noble
3 | java.next.tag=24.0.1_9-jdk-noble
4 |
5 | # Docker container images - standard
6 | docker.java.main.image=library/eclipse-temurin:${java.main.tag}
7 | docker.java.next.image=library/eclipse-temurin:${java.next.tag}
8 |
9 | # Supported versions of MongoDB
10 | docker.mongodb.8.0.version=8.0.9
11 |
12 | # Supported versions of Redis
13 | docker.redis.6.version=6.2.13
14 | docker.redis.7.version=7.2.4
15 | docker.valkey.8.version=8.1.1
16 |
17 | # Docker environment settings
18 | docker.java.inside.basic=-v $HOME:/tmp/jenkins-home
19 | docker.java.inside.docker=-u root -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v $HOME:/tmp/jenkins-home
20 |
21 | # Credentials
22 | docker.registry=
23 | docker.credentials=hub.docker.com-springbuildmaster
24 | docker.proxy.registry=https://docker-hub.usw1.packages.broadcom.com
25 | docker.proxy.credentials=usw1_packages_broadcom_com-jenkins-token
26 | artifactory.credentials=02bd1690-b54f-4c9f-819d-a77cb7a9822c
27 | artifactory.url=https://repo.spring.io
28 | artifactory.repository.snapshot=libs-snapshot-local
29 | develocity.access-key=gradle_enterprise_secret_access_key
30 | jenkins.user.name=spring-builds+jenkins
31 |
--------------------------------------------------------------------------------
/ci/start-replica.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | mkdir -p /tmp/mongodb/db /tmp/mongodb/log
3 | mongod --setParameter transactionLifetimeLimitSeconds=90 --setParameter maxTransactionLockRequestTimeoutMillis=10000 --dbpath /tmp/mongodb/db --replSet rs0 --fork --logpath /tmp/mongodb/log/mongod.log &
4 | sleep 10
5 | mongosh --eval "rs.initiate({_id: 'rs0', members:[{_id: 0, host: '127.0.0.1:27017'}]});"
6 | sleep 15
7 |
--------------------------------------------------------------------------------
/lombok.config:
--------------------------------------------------------------------------------
1 | lombok.nonNull.exceptionType = IllegalArgumentException
2 | lombok.log.fieldName = LOG
3 |
--------------------------------------------------------------------------------
/settings.xml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 | spring-plugins-release
9 | ${env.ARTIFACTORY_USR}
10 | ${env.ARTIFACTORY_PSW}
11 |
12 |
13 | spring-libs-snapshot
14 | ${env.ARTIFACTORY_USR}
15 | ${env.ARTIFACTORY_PSW}
16 |
17 |
18 | spring-libs-milestone
19 | ${env.ARTIFACTORY_USR}
20 | ${env.ARTIFACTORY_PSW}
21 |
22 |
23 | spring-libs-release
24 | ${env.ARTIFACTORY_USR}
25 | ${env.ARTIFACTORY_PSW}
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/spring-data-mongodb-distribution/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "antora": "3.2.0-alpha.6",
4 | "@antora/atlas-extension": "1.0.0-alpha.2",
5 | "@antora/collector-extension": "1.0.0-alpha.7",
6 | "@asciidoctor/tabs": "1.0.0-beta.6",
7 | "@springio/antora-extensions": "1.13.0",
8 | "@springio/asciidoctor-extensions": "1.0.0-alpha.11"
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/InvalidMongoDbApiUsageException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2010-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb;
17 |
18 | import org.springframework.dao.InvalidDataAccessApiUsageException;
19 |
20 | public class InvalidMongoDbApiUsageException extends InvalidDataAccessApiUsageException {
21 |
22 | private static final long serialVersionUID = 2034770973290508041L;
23 |
24 | public InvalidMongoDbApiUsageException(String msg) {
25 | super(msg);
26 | }
27 |
28 | public InvalidMongoDbApiUsageException(String msg, Throwable cause) {
29 | super(msg, cause);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/LazyLoadingException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2013-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb;
17 |
18 | import org.springframework.dao.UncategorizedDataAccessException;
19 |
20 | /**
21 | * @author Oliver Gierke
22 | */
23 | public class LazyLoadingException extends UncategorizedDataAccessException {
24 |
25 | private static final long serialVersionUID = -7089224903873220037L;
26 |
27 | /**
28 | * Constructor for LazyLoadingException.
29 | *
30 | * @param msg the detail message.
31 | * @param cause the exception thrown by underlying data access API.
32 | */
33 | public LazyLoadingException(String msg, Throwable cause) {
34 | super(msg, cause);
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/UncategorizedMongoDbException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2010-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb;
17 |
18 | import org.jspecify.annotations.Nullable;
19 | import org.springframework.dao.UncategorizedDataAccessException;
20 |
21 | public class UncategorizedMongoDbException extends UncategorizedDataAccessException {
22 |
23 | private static final long serialVersionUID = -2336595514062364929L;
24 |
25 | public UncategorizedMongoDbException(String msg, @Nullable Throwable cause) {
26 | super(msg, cause);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/aot/MongoAotReflectionHelper.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2024-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb.aot;
17 |
18 | import org.springframework.aot.hint.MemberCategory;
19 | import org.springframework.aot.hint.TypeHint.Builder;
20 |
21 | /**
22 | * @author Christoph Strobl
23 | */
24 | public final class MongoAotReflectionHelper {
25 |
26 | public static void cglibProxyReflectionMemberAccess(Builder builder) {
27 |
28 | builder.withMembers(MemberCategory.INVOKE_DECLARED_CONSTRUCTORS, MemberCategory.INVOKE_DECLARED_METHODS,
29 | MemberCategory.DECLARED_FIELDS);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/GeoJsonConfiguration.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2015-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb.config;
17 |
18 | import org.springframework.context.annotation.Bean;
19 | import org.springframework.data.mongodb.core.geo.GeoJsonModule;
20 | import org.springframework.data.web.config.SpringDataJacksonModules;
21 |
22 | /**
23 | * Configuration class to expose {@link GeoJsonModule} as a Spring bean.
24 | *
25 | * @author Oliver Gierke
26 | * @author Jens Schauder
27 | */
28 | public class GeoJsonConfiguration implements SpringDataJacksonModules {
29 |
30 | @Bean
31 | public GeoJsonModule geoJsonModule() {
32 | return new GeoJsonModule();
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/StringToWriteConcernConverter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2012-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb.config;
17 |
18 | import org.springframework.core.convert.converter.Converter;
19 |
20 | import com.mongodb.WriteConcern;
21 |
22 | /**
23 | * Converter to create {@link WriteConcern} instances from String representations.
24 | *
25 | * @author Oliver Gierke
26 | */
27 | public class StringToWriteConcernConverter implements Converter {
28 |
29 | public WriteConcern convert(String source) {
30 |
31 | WriteConcern writeConcern = WriteConcern.valueOf(source);
32 | return writeConcern != null ? writeConcern : new WriteConcern(source);
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/config/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | * Spring XML namespace configuration for MongoDB specific repositories.
3 | */
4 | @org.jspecify.annotations.NullMarked
5 | package org.springframework.data.mongodb.config;
6 |
7 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/DefaultWriteConcernResolver.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2015-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb.core;
17 |
18 | import org.jspecify.annotations.Nullable;
19 |
20 | import com.mongodb.WriteConcern;
21 |
22 | /**
23 | * Default {@link WriteConcernResolver} resolving the {@link WriteConcern} from the given {@link MongoAction}.
24 | *
25 | * @author Oliver Gierke
26 | */
27 | enum DefaultWriteConcernResolver implements WriteConcernResolver {
28 |
29 | INSTANCE;
30 |
31 | public @Nullable WriteConcern resolve(MongoAction action) {
32 | return action.getDefaultWriteConcern();
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/EncryptionAlgorithms.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2021-2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb.core;
17 |
18 | /**
19 | * Encryption algorithms supported by MongoDB Client Side Field Level Encryption.
20 | *
21 | * @author Christoph Strobl
22 | * @author Ross Lawley
23 | * @since 3.3
24 | */
25 | public final class EncryptionAlgorithms {
26 |
27 | public static final String AEAD_AES_256_CBC_HMAC_SHA_512_Deterministic = "AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic";
28 | public static final String AEAD_AES_256_CBC_HMAC_SHA_512_Random = "AEAD_AES_256_CBC_HMAC_SHA_512-Random";
29 | public static final String RANGE = "Range";
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/EntityResultConverter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2025 the original author or authors.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package org.springframework.data.mongodb.core;
17 |
18 | import org.bson.Document;
19 |
20 | enum EntityResultConverter implements QueryResultConverter