From e694f3de92b9737f6a1a2f39dfcfa62b1c45ee7b Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 20 Apr 2021 10:39:18 +0200 Subject: [PATCH] [jOOQ/jOOQ#10287] Don't generate copy constructor on records --- .../java/org/jooq/codegen/JavaGenerator.java | 30 +++++++++---------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java index f28c53a051..27240501c6 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java @@ -4552,31 +4552,29 @@ public class JavaGenerator extends AbstractGenerator { if (!generateImmutablePojos() && !generatePojosAsJavaRecordClasses()) generatePojoDefaultConstructor(tableUdtOrEmbeddable, out); - if (!kotlin) { + if (!kotlin && !generatePojosAsJavaRecordClasses()) { // [#1363] [#7055] copy constructor generatePojoCopyConstructor(tableUdtOrEmbeddable, out); // Multi-constructor - if (!generatePojosAsJavaRecordClasses()) { - generatePojoMultiConstructor(tableUdtOrEmbeddable, out); + generatePojoMultiConstructor(tableUdtOrEmbeddable, out); - List> elements = getTypedElements(tableUdtOrEmbeddable); - for (int i = 0; i < elements.size(); i++) { - TypedElementDefinition column = elements.get(i); + List> elements = getTypedElements(tableUdtOrEmbeddable); + for (int i = 0; i < elements.size(); i++) { + TypedElementDefinition column = elements.get(i); + if (tableUdtOrEmbeddable instanceof TableDefinition) + generatePojoGetter(column, i, out); + else + generateUDTPojoGetter(column, i, out); + + // Setter + if (!generateImmutablePojos()) if (tableUdtOrEmbeddable instanceof TableDefinition) - generatePojoGetter(column, i, out); + generatePojoSetter(column, i, out); else - generateUDTPojoGetter(column, i, out); - - // Setter - if (!generateImmutablePojos()) - if (tableUdtOrEmbeddable instanceof TableDefinition) - generatePojoSetter(column, i, out); - else - generateUDTPojoSetter(column, i, out); - } + generateUDTPojoSetter(column, i, out); } }