From 7bf3afcafb530a56565ad76db404346bf66caab2 Mon Sep 17 00:00:00 2001 From: Vladimir Kulev Date: Tue, 28 Jul 2015 01:06:59 +0300 Subject: [PATCH] Fix routine parameter code generation for types with a binding --- .../java/org/jooq/util/JavaGenerator.java | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) 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 9bc93db307..f5ff71100e 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/util/JavaGenerator.java @@ -3443,16 +3443,15 @@ public class JavaGenerator extends AbstractGenerator { final String paramName = parameter.getName(); final String paramComment = StringUtils.defaultString(parameter.getComment()); final String isDefaulted = parameter.isDefaulted() ? "true" : "false"; - final String paramConverterType = out.ref(parameter.getType().getConverter()); + final List converters = out.ref(list( + parameter.getType().getConverter(), + parameter.getType().getBinding() + )); out.tab(1).javadoc("The parameter %s.%s", parameter.getQualifiedOutputName(), defaultIfBlank(" " + paramComment, "")); - if (paramConverterType != null) - out.tab(1).println("val %s : %s[%s] = %s.createParameter(\"%s\", %s, %s, new %s)", - paramId, Parameter.class, paramType, AbstractRoutine.class, paramName, paramTypeRef, isDefaulted, paramConverterType); - else - out.tab(1).println("val %s : %s[%s] = %s.createParameter(\"%s\", %s, %s)", - paramId, Parameter.class, paramType, AbstractRoutine.class, paramName, paramTypeRef, isDefaulted); + out.tab(1).println("val %s : %s[%s] = %s.createParameter(\"%s\", %s, %s[[before=, ][new %s]])", + paramId, Parameter.class, paramType, AbstractRoutine.class, paramName, paramTypeRef, isDefaulted, converters); } out.println("}"); @@ -3478,16 +3477,15 @@ public class JavaGenerator extends AbstractGenerator { final String paramName = parameter.getName(); final String paramComment = StringUtils.defaultString(parameter.getComment()); final String isDefaulted = parameter.isDefaulted() ? "true" : "false"; - final String paramConverterType = out.ref(parameter.getType().getConverter()); + final List converters = out.ref(list( + parameter.getType().getConverter(), + parameter.getType().getBinding() + )); out.tab(1).javadoc("The parameter %s.%s", parameter.getQualifiedOutputName(), defaultIfBlank(" " + paramComment, "")); - if (paramConverterType != null) - out.tab(1).println("public static final %s<%s> %s = createParameter(\"%s\", %s, %s, new %s());", - Parameter.class, paramType, paramId, paramName, paramTypeRef, isDefaulted, paramConverterType); - else - out.tab(1).println("public static final %s<%s> %s = createParameter(\"%s\", %s, %s);", - Parameter.class, paramType, paramId, paramName, paramTypeRef, isDefaulted); + out.tab(1).println("public static final %s<%s> %s = createParameter(\"%s\", %s, %s[[before=, ][new %s()]]);", + Parameter.class, paramType, paramId, paramName, paramTypeRef, isDefaulted, converters); } }