From aa471b62854a34d3d1c3d3c077925e8ebe0f4800 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 19 Oct 2012 19:48:58 +0200 Subject: [PATCH] [#1869] Deprecate org.jooq.NamedQueryPart --- .../java/org/jooq/util/AbstractDatabase.java | 1 + jOOQ-website/src/main/java/Transform.java | 1 + .../main/java/org/jooq/NamedQueryPart.java | 4 ++ jOOQ/src/main/java/org/jooq/Package.java | 6 ++ jOOQ/src/main/java/org/jooq/Parameter.java | 6 ++ jOOQ/src/main/java/org/jooq/Routine.java | 6 ++ jOOQ/src/main/java/org/jooq/Schema.java | 7 ++ jOOQ/src/main/java/org/jooq/SortField.java | 6 ++ jOOQ/src/main/java/org/jooq/Table.java | 70 ++++++++++--------- jOOQ/src/main/java/org/jooq/UDT.java | 6 ++ .../java/org/jooq/conf/SettingsTools.java | 2 + .../org/jooq/impl/AbstractNamedQueryPart.java | 1 + .../java/org/jooq/impl/AbstractSubSelect.java | 4 +- .../java/org/jooq/impl/AliasProviderImpl.java | 2 +- .../main/java/org/jooq/impl/JoinTable.java | 2 +- .../main/java/org/jooq/impl/MergeImpl.java | 4 +- jOOQ/src/main/java/org/jooq/impl/Util.java | 21 ++++-- 17 files changed, 107 insertions(+), 42 deletions(-) diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java index 05d91877fd..00b764cb8f 100644 --- a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java @@ -447,6 +447,7 @@ public abstract class AbstractDatabase implements Database { String literals = enumType.getLiterals(); try { + @SuppressWarnings("resource") CSVReader reader = new CSVReader(new StringReader(literals)); e.addLiterals(reader.readNext()); } catch (IOException ignore) {} diff --git a/jOOQ-website/src/main/java/Transform.java b/jOOQ-website/src/main/java/Transform.java index 8b78e86a17..e61c60a8ba 100644 --- a/jOOQ-website/src/main/java/Transform.java +++ b/jOOQ-website/src/main/java/Transform.java @@ -68,6 +68,7 @@ import org.joox.Match; * * @author Lukas Eder */ +@SuppressWarnings("resource") public class Transform { private static final FopFactory fopFactory = FopFactory.newInstance(); private static final String version = "2.6"; diff --git a/jOOQ/src/main/java/org/jooq/NamedQueryPart.java b/jOOQ/src/main/java/org/jooq/NamedQueryPart.java index 53f877b7dc..daa7b15f40 100644 --- a/jOOQ/src/main/java/org/jooq/NamedQueryPart.java +++ b/jOOQ/src/main/java/org/jooq/NamedQueryPart.java @@ -42,7 +42,11 @@ package org.jooq; * order. * * @author Lukas Eder + * @deprecated - 2.6.0 [#1869] - This marker interface does not have enough + * momentum to be exposed in the public API. It will be removed in + * the future. */ +@Deprecated public interface NamedQueryPart extends QueryPart, Comparable { /** diff --git a/jOOQ/src/main/java/org/jooq/Package.java b/jOOQ/src/main/java/org/jooq/Package.java index 454ec06893..90de0d2377 100644 --- a/jOOQ/src/main/java/org/jooq/Package.java +++ b/jOOQ/src/main/java/org/jooq/Package.java @@ -51,4 +51,10 @@ public interface Package extends NamedQueryPart, org.jooq.SchemaProvider { @Override Schema getSchema(); + /** + * The name of this package + */ + @Override + String getName(); + } diff --git a/jOOQ/src/main/java/org/jooq/Parameter.java b/jOOQ/src/main/java/org/jooq/Parameter.java index d85caad24d..10982a13d0 100644 --- a/jOOQ/src/main/java/org/jooq/Parameter.java +++ b/jOOQ/src/main/java/org/jooq/Parameter.java @@ -47,6 +47,12 @@ import static org.jooq.SQLDialect.ORACLE; @SuppressWarnings("deprecation") public interface Parameter extends NamedTypeProviderQueryPart { + /** + * The name of this parameter + */ + @Override + String getName(); + /** * The Java type of the parameter. */ diff --git a/jOOQ/src/main/java/org/jooq/Routine.java b/jOOQ/src/main/java/org/jooq/Routine.java index 50cdb7653f..35f9638059 100644 --- a/jOOQ/src/main/java/org/jooq/Routine.java +++ b/jOOQ/src/main/java/org/jooq/Routine.java @@ -91,6 +91,12 @@ public interface Routine extends NamedQueryPart, org.jooq.SchemaProvider { @Override Schema getSchema(); + /** + * The name of this routine + */ + @Override + String getName(); + /** * The container package of this stored procedure or function. *

diff --git a/jOOQ/src/main/java/org/jooq/Schema.java b/jOOQ/src/main/java/org/jooq/Schema.java index 9ef78eeb54..83578cf00c 100644 --- a/jOOQ/src/main/java/org/jooq/Schema.java +++ b/jOOQ/src/main/java/org/jooq/Schema.java @@ -45,8 +45,15 @@ import java.util.Map; * * @author Lukas Eder */ +@SuppressWarnings("deprecation") public interface Schema extends NamedQueryPart { + /** + * The name of this schema + */ + @Override + String getName(); + /** * The complete type mapping for this schema. *

diff --git a/jOOQ/src/main/java/org/jooq/SortField.java b/jOOQ/src/main/java/org/jooq/SortField.java index 40f0796e0d..18d510cad3 100644 --- a/jOOQ/src/main/java/org/jooq/SortField.java +++ b/jOOQ/src/main/java/org/jooq/SortField.java @@ -46,6 +46,12 @@ package org.jooq; @SuppressWarnings("deprecation") public interface SortField extends NamedTypeProviderQueryPart { + /** + * The name of this sort field + */ + @Override + String getName(); + /** * Get the underlying sort order of this sort field */ diff --git a/jOOQ/src/main/java/org/jooq/Table.java b/jOOQ/src/main/java/org/jooq/Table.java index 05cf243c17..33ee8169ef 100644 --- a/jOOQ/src/main/java/org/jooq/Table.java +++ b/jOOQ/src/main/java/org/jooq/Table.java @@ -57,7 +57,7 @@ import org.jooq.impl.Factory; /** * A table to be used in queries - * + * * @param The record type associated with this table * @author Lukas Eder */ @@ -70,6 +70,12 @@ public interface Table extends org.jooq.Type, AliasProvider @Override Schema getSchema(); + /** + * The name of this table + */ + @Override + String getName(); + /** * @return The record type produced by this table */ @@ -78,7 +84,7 @@ public interface Table extends org.jooq.Type, AliasProvider /** * Create an alias for this table - * + * * @param alias The alias name * @return The table alias */ @@ -101,7 +107,7 @@ public interface Table extends org.jooq.Type, AliasProvider *

* Note: Unfortunately, this is not supported in the Oracle dialect, where * identities simulated by triggers cannot be formally detected. - * + * * @return The table's IDENTITY information, or * null, if no such information is available. */ @@ -109,7 +115,7 @@ public interface Table extends org.jooq.Type, AliasProvider /** * Get the list of FOREIGN KEY's of this table - * + * * @return This table's FOREIGN KEY's. This is never * null. */ @@ -118,7 +124,7 @@ public interface Table extends org.jooq.Type, AliasProvider /** * Get a list of FOREIGN KEY's of this table, referencing a * specific table. - * + * * @param The other table's record type * @param other The other table of the foreign key relationship * @return This table's FOREIGN KEY's towards an other table. @@ -137,7 +143,7 @@ public interface Table extends org.jooq.Type, AliasProvider *

  • Other dialects by using some means of simulation (not yet officially * supported)
  • * - * + * * @param aggregateFunctions The aggregate functions used for pivoting. * @return A DSL object to create the PIVOT expression */ @@ -149,7 +155,7 @@ public interface Table extends org.jooq.Type, AliasProvider * into another form *

    * For more details, see {@link #pivot(Field...)} - * + * * @param aggregateFunctions The aggregate functions used for pivoting. * @return A DSL object to create the PIVOT expression * @see #pivot(Field...) @@ -166,7 +172,7 @@ public interface Table extends org.jooq.Type, AliasProvider *

          * Assume the following cross join / cartesian product
          * C = A × B
    -     * 
    +     *
          * Then it can be said that
          * A = C ÷ B
          * B = C ÷ A
    @@ -237,7 +243,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support
    @@ -250,7 +256,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support
    @@ -263,7 +269,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support
    @@ -282,7 +288,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support
    @@ -295,7 +301,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support
    @@ -308,7 +314,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support
    @@ -331,7 +337,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -346,7 +352,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -361,7 +367,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -384,7 +390,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support({ DB2, FIREBIRD, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -399,7 +405,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support({ DB2, FIREBIRD, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -414,7 +420,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support({ DB2, FIREBIRD, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -447,7 +453,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support
    @@ -467,7 +473,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support
    @@ -487,7 +493,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support
    @@ -512,7 +518,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support
    @@ -528,7 +534,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support
    @@ -544,7 +550,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support
    @@ -569,7 +575,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support
    @@ -585,7 +591,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support
    @@ -601,7 +607,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support
    @@ -626,7 +632,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String)
          */
         @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -642,7 +648,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, Object...)
          */
         @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    @@ -658,7 +664,7 @@ public interface Table extends org.jooq.Type, AliasProvider
          * guarantee syntax integrity. You may also create the possibility of
          * malicious SQL injection. Be sure to properly use bind variables and/or
          * escape literals when concatenated into SQL clauses!
    -     * 
    +     *
          * @see Factory#table(String, QueryPart...)
          */
         @Support({ ASE, CUBRID, DB2, DERBY, FIREBIRD, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    diff --git a/jOOQ/src/main/java/org/jooq/UDT.java b/jOOQ/src/main/java/org/jooq/UDT.java
    index 7e40b7718d..beb843e467 100644
    --- a/jOOQ/src/main/java/org/jooq/UDT.java
    +++ b/jOOQ/src/main/java/org/jooq/UDT.java
    @@ -54,6 +54,12 @@ public interface UDT> extends org.jooq.Type {
         @Override
         Schema getSchema();
     
    +    /**
    +     * The name of this UDT
    +     */
    +    @Override
    +    String getName();
    +
         /**
          * @return The record type produced by this table
          */
    diff --git a/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java b/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java
    index 9432849cac..bc0b43ef00 100644
    --- a/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java
    +++ b/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java
    @@ -61,6 +61,7 @@ public final class SettingsTools {
             if (property != null) {
     
                 // Check classpath first
    +            @SuppressWarnings("resource")
                 InputStream in = SettingsTools.class.getResourceAsStream(property);
                 if (in != null) {
                     settings = JAXB.unmarshal(in, Settings.class);
    @@ -71,6 +72,7 @@ public final class SettingsTools {
             }
     
             if (settings == null) {
    +            @SuppressWarnings("resource")
                 InputStream in = SettingsTools.class.getResourceAsStream("/jooq-settings.xml");
     
                 if (in != null) {
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java
    index 022e14fb05..234ac72a1c 100644
    --- a/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java
    @@ -41,6 +41,7 @@ import org.jooq.NamedQueryPart;
     /**
      * @author Lukas Eder
      */
    +@SuppressWarnings("deprecation")
     abstract class AbstractNamedQueryPart extends AbstractQueryPart implements NamedQueryPart {
     
         private static final long serialVersionUID = -4496974591205380167L;
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java b/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java
    index ddb243afd8..6221019245 100644
    --- a/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java
    @@ -254,7 +254,7 @@ implements
     
                 if (!forUpdateOf.isEmpty()) {
                     context.keyword(" of ");
    -                Util.toSQLNames(context, forUpdateOf);
    +                Util.fieldNames(context, forUpdateOf);
                 }
                 else if (!forUpdateOfTables.isEmpty()) {
                     context.keyword(" of ");
    @@ -273,7 +273,7 @@ implements
     
                         // Render the OF [table-names] clause
                         default:
    -                        Util.toSQLNames(context, forUpdateOfTables);
    +                        Util.tableNames(context, forUpdateOfTables);
                             break;
                     }
                 }
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java b/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java
    index cd08f534f7..55f14e24b2 100644
    --- a/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java
    +++ b/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java
    @@ -113,7 +113,7 @@ class AliasProviderImpl> extends AbstractNamedQueryPa
                             ArrayTable table = (ArrayTable) o;
     
                             context.sql("(");
    -                        Util.toSQLNames(context, table.getFields());
    +                        Util.fieldNames(context, table.getFields());
                             context.sql(")");
                         }
     
    diff --git a/jOOQ/src/main/java/org/jooq/impl/JoinTable.java b/jOOQ/src/main/java/org/jooq/impl/JoinTable.java
    index dad357291f..c880792331 100644
    --- a/jOOQ/src/main/java/org/jooq/impl/JoinTable.java
    +++ b/jOOQ/src/main/java/org/jooq/impl/JoinTable.java
    @@ -211,7 +211,7 @@ class JoinTable extends AbstractTable implements TableOptionalOnStep, Ta
                 // Native supporters of JOIN .. USING
                 else {
                     context.keyword(" using (");
    -                Util.toSQLNames(context, using);
    +                Util.fieldNames(context, using);
                     context.sql(")");
                 }
             }
    diff --git a/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java b/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java
    index 870c8a4c23..a6cad2056d 100644
    --- a/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java
    +++ b/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java
    @@ -548,12 +548,12 @@ implements
                    .formatSeparator();
     
             context.sql("(");
    -        Util.toSQLNames(context, getH2Fields());
    +        Util.fieldNames(context, getH2Fields());
             context.sql(")");
     
             if (!getH2Keys().isEmpty()) {
                 context.keyword(" key (");
    -            Util.toSQLNames(context, getH2Keys());
    +            Util.fieldNames(context, getH2Keys());
                 context.sql(")");
             }
     
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Util.java b/jOOQ/src/main/java/org/jooq/impl/Util.java
    index e38d00b51f..763a4ea8ef 100644
    --- a/jOOQ/src/main/java/org/jooq/impl/Util.java
    +++ b/jOOQ/src/main/java/org/jooq/impl/Util.java
    @@ -72,7 +72,6 @@ import org.jooq.ExecuteContext;
     import org.jooq.ExecuteListener;
     import org.jooq.Field;
     import org.jooq.FieldProvider;
    -import org.jooq.NamedQueryPart;
     import org.jooq.Param;
     import org.jooq.QueryPart;
     import org.jooq.Record;
    @@ -553,11 +552,25 @@ final class Util {
          * Render a list of names of the NamedQueryParts contained in
          * this list.
          */
    -    static final void toSQLNames(RenderContext context, Collection list) {
    +    static final void fieldNames(RenderContext context, Collection> list) {
             String separator = "";
     
    -        for (NamedQueryPart part : list) {
    -            context.sql(separator).literal(part.getName());
    +        for (Field field : list) {
    +            context.sql(separator).literal(field.getName());
    +
    +            separator = ", ";
    +        }
    +    }
    +
    +    /**
    +     * Render a list of names of the NamedQueryParts contained in
    +     * this list.
    +     */
    +    static final void tableNames(RenderContext context, Collection> list) {
    +        String separator = "";
    +
    +        for (Table table : list) {
    +            context.sql(separator).literal(table.getName());
     
                 separator = ", ";
             }