From e707d8a84a5c77be0f10f6a6cac50533690aed01 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Wed, 9 Feb 2022 13:57:28 +0100 Subject: [PATCH] [jOOQ/jOOQ#13029] SQLDataType.XYZ.getArrayDataType().getTypeName() should produce standard SQL XYZ ARRAY type --- .../main/java/org/jooq/impl/AbstractDataType.java | 2 +- jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java b/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java index 8e48e198ec..7b4d805562 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java @@ -461,7 +461,7 @@ implements } @Override - public final String getTypeName() { + public /* non-final */ String getTypeName() { return typeName0(); } diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java b/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java index e256aa8795..60b20b75fd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java @@ -37,6 +37,8 @@ */ package org.jooq.impl; +import static org.jooq.impl.Tools.CTX; + import org.jooq.CharacterSet; import org.jooq.Collation; import org.jooq.Configuration; @@ -116,6 +118,11 @@ final class ArrayDataType extends DefaultDataType { ); } + @Override + public final String getTypeName() { + return getTypeName(CTX.configuration()); + } + @Override public final String getTypeName(Configuration configuration) { String typeName = elementType.getTypeName(configuration); @@ -142,10 +149,6 @@ final class ArrayDataType extends DefaultDataType { private static String getArrayType(Configuration configuration, String dataType) { switch (configuration.family()) { - case HSQLDB: - return dataType + " array"; - - case POSTGRES: case YUGABYTEDB: @@ -161,7 +164,7 @@ final class ArrayDataType extends DefaultDataType { // Default implementation is needed for hash-codes and toString() default: - return dataType + "[]"; + return dataType + " array"; } } }