Skip to content

Commit 3b6798f

Browse files
committed
Adapt AOT repository contribution to encapsulated model.
Closes #5048
1 parent 2e256f2 commit 3b6798f

File tree

2 files changed

+9
-16
lines changed

2 files changed

+9
-16
lines changed

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/aot/MongoRepositoryContributor.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,8 +132,8 @@ protected void customizeClass(AotRepositoryClassBuilder classBuilder) {
132132
@Override
133133
protected void customizeConstructor(AotRepositoryConstructorBuilder constructorBuilder) {
134134

135-
constructorBuilder.addParameter("operations", TypeName.get(MongoOperations.class));
136-
constructorBuilder.addParameter("context", TypeName.get(RepositoryFactoryBeanSupport.FragmentCreationContext.class),
135+
constructorBuilder.addParameter("operations", MongoOperations.class);
136+
constructorBuilder.addParameter("context", RepositoryFactoryBeanSupport.FragmentCreationContext.class,
137137
false);
138138

139139
constructorBuilder.customize((builder) -> {

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/aot/QueryMethodContributionUnitTests.java

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
*/
1616
package org.springframework.data.mongodb.repository.aot;
1717

18-
import static org.assertj.core.api.Assertions.assertThat;
18+
import static org.assertj.core.api.Assertions.*;
1919

2020
import example.aot.User;
2121
import example.aot.UserRepository;
@@ -26,10 +26,9 @@
2626
import java.util.List;
2727
import java.util.regex.Pattern;
2828

29-
import javax.lang.model.element.Modifier;
30-
3129
import org.junit.jupiter.api.Assertions;
3230
import org.junit.jupiter.api.Test;
31+
3332
import org.springframework.data.domain.Limit;
3433
import org.springframework.data.domain.Pageable;
3534
import org.springframework.data.domain.Range;
@@ -43,7 +42,6 @@
4342
import org.springframework.data.geo.GeoResults;
4443
import org.springframework.data.geo.Point;
4544
import org.springframework.data.geo.Polygon;
46-
import org.springframework.data.mongodb.core.MongoOperations;
4745
import org.springframework.data.mongodb.core.annotation.Collation;
4846
import org.springframework.data.mongodb.core.geo.GeoJsonPolygon;
4947
import org.springframework.data.mongodb.core.geo.Sphere;
@@ -52,11 +50,9 @@
5250
import org.springframework.data.mongodb.repository.VectorSearch;
5351
import org.springframework.data.repository.Repository;
5452
import org.springframework.data.repository.aot.generate.AotQueryMethodGenerationContext;
55-
import org.springframework.data.repository.aot.generate.AotRepositoryFragmentMetadata;
5653
import org.springframework.data.repository.aot.generate.MethodContributor;
5754
import org.springframework.data.repository.core.RepositoryInformation;
5855
import org.springframework.data.repository.query.QueryMethod;
59-
import org.springframework.javapoet.FieldSpec;
6056
import org.springframework.javapoet.MethodSpec;
6157

6258
/**
@@ -403,12 +399,9 @@ private static MethodSpec codeOf(Class<?> repository, String methodName, Class<?
403399
Assertions.fail("No contribution for method %s.%s(%s)".formatted(repository.getSimpleName(), methodName,
404400
Arrays.stream(args).map(Class::getSimpleName).toList()));
405401
}
406-
AotRepositoryFragmentMetadata metadata = new AotRepositoryFragmentMetadata();
407-
metadata.addField(
408-
FieldSpec.builder(MongoOperations.class, "mongoOperations", Modifier.PRIVATE, Modifier.FINAL).build());
409-
410402
TestQueryMethodGenerationContext methodContext = new TestQueryMethodGenerationContext(
411-
repoContext.getRepositoryInformation(), method, methodContributor.getQueryMethod(), metadata);
403+
repoContext.getRepositoryInformation(), method, methodContributor.getQueryMethod());
404+
412405
return methodContributor.contribute(methodContext);
413406
}
414407

@@ -425,9 +418,9 @@ private static CharSequence string(String s) {
425418

426419
static class TestQueryMethodGenerationContext extends AotQueryMethodGenerationContext {
427420

428-
protected TestQueryMethodGenerationContext(RepositoryInformation repositoryInformation, Method method,
429-
QueryMethod queryMethod, AotRepositoryFragmentMetadata targetTypeMetadata) {
430-
super(repositoryInformation, method, queryMethod, targetTypeMetadata);
421+
TestQueryMethodGenerationContext(RepositoryInformation repositoryInformation, Method method,
422+
QueryMethod queryMethod) {
423+
super(repositoryInformation, method, queryMethod);
431424
}
432425
}
433426

0 commit comments

Comments
 (0)