From cb2a31c95fb11104d689880b52124fd1b7e73b49 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 30 Apr 2021 11:34:20 +0200 Subject: [PATCH] [jOOQ/jOOQ#11802] Fixed regression The wrong args value is being displayed in parseInteractive() --- jOOQ/src/main/java/org/jooq/ParserCLI.java | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/ParserCLI.java b/jOOQ/src/main/java/org/jooq/ParserCLI.java index bae06abf60..d76e2f56d2 100644 --- a/jOOQ/src/main/java/org/jooq/ParserCLI.java +++ b/jOOQ/src/main/java/org/jooq/ParserCLI.java @@ -113,14 +113,14 @@ public final class ParserCLI { settings.setTransformRownum(a.transformRownum); } - private static > E parseInteractive(Class type, E current, Args a, String arg) { + private static final > E parseInteractive(Class type, E current, String arg, Runnable onSuccess) { E result = current; try { if (arg != null) result = Enum.valueOf(type, arg.toUpperCase()); - displayKeywords(a); + onSuccess.run(); } catch (IllegalArgumentException e) { invalid(arg, type); @@ -167,16 +167,16 @@ public final class ParserCLI { displayFormatted(a); } else if ("k".equals(flag) || "keyword".equals(flag)) { - a.keywords = parseInteractive(RenderKeywordCase.class, a.keywords, a, arg); + a.keywords = parseInteractive(RenderKeywordCase.class, a.keywords, arg, () -> displayKeywords(a)); } else if ("i".equals(flag) || "identifier".equals(flag)) { - a.name = parseInteractive(RenderNameCase.class, a.name, a, arg); + a.name = parseInteractive(RenderNameCase.class, a.name, arg, () -> displayIdentifiers(a)); } else if ("Q".equals(flag) || "quoted".equals(flag)) { - a.quoted = parseInteractive(RenderQuotedNames.class, a.quoted, a, arg); + a.quoted = parseInteractive(RenderQuotedNames.class, a.quoted, arg, () -> displayQuoted(a)); } else if ("F".equals(flag) || "from-dialect".equals(flag)) { - a.fromDialect = parseInteractive(SQLDialect.class, a.fromDialect, a, arg); + a.fromDialect = parseInteractive(SQLDialect.class, a.fromDialect, arg, () -> displayFromDialect(a)); } else if ("render-coalesce-to-empty-string-in-concat".equals(flag)) { if (arg != null) @@ -191,10 +191,10 @@ public final class ParserCLI { displayTransformAnsiJoinToTablesLists(a); } else if ("transform-qualify".equals(flag)) { - a.transformQualify = parseInteractive(Transformation.class, a.transformQualify, a, arg); + a.transformQualify = parseInteractive(Transformation.class, a.transformQualify, arg, () -> displayTransformQualify(a)); } else if ("transform-rownum".equals(flag)) { - a.transformRownum = parseInteractive(Transformation.class, a.transformRownum, a, arg); + a.transformRownum = parseInteractive(Transformation.class, a.transformRownum, arg, () -> displayTransformRownum(a)); } else if ("transform-table-lists-to-ansi-join".equals(flag)) { if (arg != null) @@ -203,12 +203,12 @@ public final class ParserCLI { displayTransformTableListsToAnsiJoin(a); } else if ("transform-unneeded-arithmetic".equals(flag)) { - a.transformUnneededArithmetic = parseInteractive(TransformUnneededArithmeticExpressions.class, a.transformUnneededArithmetic, a, arg); + a.transformUnneededArithmetic = parseInteractive(TransformUnneededArithmeticExpressions.class, a.transformUnneededArithmetic, arg, () -> displayTransformUnneededArithmetic(a)); } // [#9144] /t maintained for backwards compatibility else if ("t".equals(flag) || "T".equals(flag) || "to-dialect".equals(flag)) { - a.toDialect = parseInteractive(SQLDialect.class, a.toDialect, a, arg); + a.toDialect = parseInteractive(SQLDialect.class, a.toDialect, arg, () -> displayToDialect(a)); } } }