From 8d9281da4747a903c8216caaf48c8b15e0911fce Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 7 Aug 2020 16:22:02 +0200 Subject: [PATCH] [jOOQ/jOOQ#10309] Add code generation support for arrays of domain types --- .../src/main/java/org/jooq/codegen/JavaGenerator.java | 7 +++++++ 1 file changed, 7 insertions(+) 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 703a683d26..919a624ca6 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java @@ -7189,6 +7189,8 @@ public class JavaGenerator extends AbstractGenerator { // [#4388] TODO: Improve array handling Name baseType = GenerationUtil.getArrayBaseType(db.getDialect(), t, u); + // [#10309] TODO: The schema should be taken from baseType, if available. Might be different than the argument schema. + // When can this happen? if (scala) type = "scala.Array[" + getType(db, schema, baseType.last(), p, s, baseType, javaType, defaultType, udtMode) + "]"; else if (kotlin) @@ -7218,6 +7220,11 @@ public class JavaGenerator extends AbstractGenerator { } } + // Check for DOMAIN types + else if (db.getDomain(schema, u) != null) { + type = getJavaType(db.getDomain(schema, u).getDefinedType()); + } + // Check for ENUM types else if (db.getEnum(schema, u) != null) { type = getStrategy().getFullJavaClassName(db.getEnum(schema, u), Mode.ENUM);