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 0daafc5805..73d06d46e7 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java @@ -5985,12 +5985,9 @@ public class JavaGenerator extends AbstractGenerator { sb.append(".getDataType()"); } else if (db.getEnum(schema, u) != null) { - sb.append("org.jooq.util."); - sb.append(db.getDialect().getName().toLowerCase()); - sb.append("."); - sb.append(db.getDialect().getName()); - sb.append("DataType."); - sb.append(DefaultDataType.normalise(DefaultDataType.getDataType(db.getDialect(), String.class).getTypeName())); + sb.append(getJavaTypeReference(db, new DefaultDataTypeDefinition( + db, schema, DefaultDataType.getDataType(db.getDialect(), String.class).getTypeName(), l, p, s, n, d, (Name) null + ))); sb.append(".asEnumDataType("); sb.append(classOf(getStrategy().getFullJavaClassName(db.getEnum(schema, u)))); sb.append(")"); diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java b/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java index 422d19cd59..2fd78e6b7e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java @@ -725,10 +725,11 @@ public class DefaultDataType implements DataType { + @SuppressWarnings("rawtypes") @Override public final DataType asEnumDataType(Class enumDataType) { String enumTypeName = Tools.enums(enumDataType)[0].getName(); - return new DefaultDataType(dialect, enumDataType, enumTypeName, enumTypeName); + return new DefaultDataType(dialect, (DataType) null, enumDataType, enumTypeName, enumTypeName, precision, scale, length, nullability, (Field) defaultValue); } @Override