[jOOQ/jOOQ#13029] SQLDataType.XYZ.getArrayDataType().getTypeName() should produce standard SQL XYZ ARRAY type

This commit is contained in:
Lukas Eder 2022-02-09 13:57:28 +01:00
parent 560f2af5fd
commit e707d8a84a
2 changed files with 9 additions and 6 deletions

View File

@ -461,7 +461,7 @@ implements
}
@Override
public final String getTypeName() {
public /* non-final */ String getTypeName() {
return typeName0();
}

View File

@ -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<T> extends DefaultDataType<T[]> {
);
}
@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<T> extends DefaultDataType<T[]> {
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<T> extends DefaultDataType<T[]> {
// Default implementation is needed for hash-codes and toString()
default:
return dataType + "[]";
return dataType + " array";
}
}
}