From d59d66b2ef3cfdda91cfd53f5708e6bdaa558284 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 4 Mar 2021 11:31:01 +0100 Subject: [PATCH] [jOOQ/jOOQ#11559] Fixed regression --- jOOQ/src/main/java/org/jooq/impl/DateAdd.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DateAdd.java b/jOOQ/src/main/java/org/jooq/impl/DateAdd.java index bc5b1bf2b1..9989144a84 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DateAdd.java +++ b/jOOQ/src/main/java/org/jooq/impl/DateAdd.java @@ -126,7 +126,7 @@ extends case DERBY: case HSQLDB: { - switch (datePart) { + switch (datePart()) { case YEAR: keyword = DSL.keyword("sql_tsi_year"); break; case MONTH: keyword = DSL.keyword("sql_tsi_month"); break; case DAY: keyword = DSL.keyword("sql_tsi_day"); break; @@ -141,7 +141,7 @@ extends } case H2: { - switch (datePart) { + switch (datePart()) { case YEAR: string = "year"; break; case MONTH: string = "month"; break; case DAY: string = "day"; break; @@ -165,7 +165,7 @@ extends case POSTGRES: { - switch (datePart) { + switch (datePart()) { case YEAR: string = "1 year"; break; case MONTH: string = "1 month"; break; case DAY: string = "1 day"; break; @@ -178,7 +178,7 @@ extends if (getDataType().isDate()) // [#10258] Special case for DATE + INTEGER arithmetic - if (datePart == DatePart.DAY) + if (datePart() == DatePart.DAY) ctx.sql('(').visit(date).sql(" + ").visit(interval).sql(')'); // [#3824] Ensure that the output for DATE arithmetic will also be of type DATE, not TIMESTAMP @@ -192,7 +192,7 @@ extends } case SQLITE: { - switch (datePart) { + switch (datePart()) { case YEAR: string = " year"; break; case MONTH: string = " month"; break; case DAY: string = " day"; break; @@ -348,20 +348,24 @@ extends } private final Keyword standardKeyword() { - switch (datePart) { + switch (datePart()) { case YEAR: case MONTH: case DAY: case HOUR: case MINUTE: case SECOND: - return datePart.toKeyword(); + return datePart().toKeyword(); default: throw unsupported(); } } + private final DatePart datePart() { + return StringUtils.defaultIfNull(datePart, DatePart.DAY); + } + private final UnsupportedOperationException unsupported() { return new UnsupportedOperationException("Unknown date part : " + datePart); }