From 4b34e97651424c84133b735f1f39b44be7b65108 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 22 Oct 2020 16:57:44 +0200 Subject: [PATCH] [jOOQ/jOOQ#10787] KotlinGenerator and ScalaGenerator don't produce correct POJO.toString(), equals(), hashCode() methods for array types --- jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java | 3 +++ 1 file changed, 3 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 0d7bd8ecd9..951df9cd30 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java @@ -4831,9 +4831,12 @@ public class JavaGenerator extends AbstractGenerator { for (TypedElementDefinition column : getTypedElements(tableOrUDT)) { final String columnMember = getStrategy().getJavaMemberName(column, Mode.POJO); final String columnType = getJavaType(column.getType(resolver(out)), out); + final boolean array = isArrayType(columnType); if (columnType.equals("scala.Array[scala.Byte]")) out.println("sb%s.append(\"[binary...]\")", separator); + else if (array) + out.println("sb%s.append(\"[\").append(if (this.%s == null) \"\" else %s.mkString(\", \")).append(\"]\")", separator, columnMember, columnMember); else out.println("sb%s.append(%s)", separator, columnMember);