From 33d29e07e2ecea49af2d46e19531c4f96b2815f9 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Fri, 30 Jun 2017 15:49:53 +0200 Subject: [PATCH] [#6245] Generate component[N]() methods in generated records --- .../main/java/org/jooq/util/JavaGenerator.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java index f2a7a6227d..12fb6fda2b 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java @@ -1207,6 +1207,24 @@ public class JavaGenerator extends AbstractGenerator { } } + // component[N]() + for (int i = 1; i <= degree; i++) { + TypedElementDefinition column = columns.get(i - 1); + + final String colType = out.ref(getJavaType(column.getType())); + final String colGetter = getStrategy().getJavaGetterName(column, Mode.RECORD); + + if (scala) { + out.tab(1).println("override def component%s : %s = %s", i, colType, colGetter); + } + else { + out.tab(1).overrideInherit(); + out.tab(1).println("public %s component%s() {", colType, i); + out.tab(2).println("return %s();", colGetter); + out.tab(1).println("}"); + } + } + // value[N]() for (int i = 1; i <= degree; i++) { TypedElementDefinition column = columns.get(i - 1);