From d2dc730ccb64c9e7f3dbc5e6da87ed826976cfa8 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 19 Jul 2012 19:44:15 +0200 Subject: [PATCH] [#1587] Generate missing constructors taking DataSource in schema-specific factories --- .../java/org/jooq/util/DefaultGenerator.java | 39 ++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java index a05376086c..2377de2e32 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java @@ -51,6 +51,8 @@ import java.util.LinkedHashSet; import java.util.List; import java.util.Set; +import javax.sql.DataSource; + import org.jooq.Configuration; import org.jooq.Constants; import org.jooq.DataType; @@ -1913,6 +1915,22 @@ public class DefaultGenerator extends AbstractGenerator { outF.println("\t\tinitDefaultSchema();"); outF.println("\t}"); + outF.println(); + outF.println("\t/**"); + outF.println("\t * Create a factory with a data source"); + outF.println("\t *"); + outF.println("\t * @param dataSource The data source to use with objects created from this factory"); + outF.println("\t */"); + outF.print("\tpublic "); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print("("); + outF.print(DataSource.class); + outF.println(" dataSource) {"); + outF.println("\t\tsuper(dataSource);"); + outF.println(); + outF.println("\t\tinitDefaultSchema();"); + outF.println("\t}"); + if (generateDeprecated()) { outF.println(); outF.println("\t/**"); @@ -1957,6 +1975,25 @@ public class DefaultGenerator extends AbstractGenerator { outF.println("\t\tinitDefaultSchema();"); outF.println("\t}"); + outF.println(); + outF.println("\t/**"); + outF.println("\t * Create a factory with a data source and some settings"); + outF.println("\t *"); + outF.println("\t * @param dataSource The data source to use with objects created from this factory"); + outF.println("\t * @param settings The settings to apply to objects created from this factory"); + outF.println("\t */"); + outF.print("\tpublic "); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print("("); + outF.print(DataSource.class); + outF.print(" dataSource, "); + outF.print(Settings.class); + outF.println(" settings) {"); + outF.println("\t\tsuper(dataSource, settings);"); + outF.println(); + outF.println("\t\tinitDefaultSchema();"); + outF.println("\t}"); + // [#1315] schema-specific factories override the default schema outF.println(); outF.println("\t/**"); @@ -1972,7 +2009,7 @@ public class DefaultGenerator extends AbstractGenerator { outF.println(".getName());"); outF.println("\t}"); - watch.splitInfo("Schema generated"); + watch.splitInfo("Factory generated"); } protected void printExtends(GenerationWriter out, Definition definition, Mode mode) {