Skip to content

Commit 60e7b97

Browse files
committed
feature, test: add QueryProjectionBuilderTestEntity for GenericExporter
1 parent 031fe37 commit 60e7b97

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

querydsl-tooling/querydsl-apt/src/test/java/com/querydsl/apt/GenericExporterTest.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ public void execute() throws IOException {
5050
expected.add("QQueryProjectionTest_EntityWithProjection.java");
5151
expected.add("QEmbeddable3Test_EmbeddableClass.java");
5252
expected.add("QQueryEmbedded4Test_User.java");
53+
expected.add("QQueryProjectionBuilderTestEntity.java");
5354

5455
execute(expected, "GenericExporterTest", "QuerydslAnnotationProcessor");
5556
}
@@ -89,6 +90,7 @@ public void execute2() throws IOException {
8990
expected.add("QOneToOneTest_Person.java");
9091
expected.add("QGeneric16Test_HidaBez.java");
9192
expected.add("QGeneric16Test_HidaBezGruppe.java");
93+
expected.add("QQueryProjectionBuilderTestEntity.java");
9294

9395
execute(expected, "GenericExporterTest2", "HibernateAnnotationProcessor");
9496
}

querydsl-tooling/querydsl-codegen/src/main/java/com/querydsl/codegen/GenericExporter.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -403,7 +403,11 @@ private void addConstructors(Class<?> cl, EntityType type) {
403403
}
404404
parameters.add(new Parameter("param" + i, parameterType));
405405
}
406-
type.addConstructor(new com.querydsl.codegen.utils.model.Constructor(parameters));
406+
var queryProjection = constructor.getAnnotation(QueryProjection.class);
407+
var newConstructor = new com.querydsl.codegen.utils.model.Constructor(parameters);
408+
newConstructor.setUseBuilder(queryProjection.useBuilder());
409+
newConstructor.setBuilderName(queryProjection.builderName());
410+
type.addConstructor(newConstructor);
407411
}
408412
}
409413
}

0 commit comments

Comments
 (0)