From ced4f4170355cb85d5828e65277e1f3730c58801 Mon Sep 17 00:00:00 2001 From: Knut Wannheden Date: Tue, 24 Sep 2019 16:34:43 +0200 Subject: [PATCH] [jOOQ/jOOQ#9263] Revert change in ConditionAsField --- .../main/java/org/jooq/impl/ConditionAsField.java | 14 ++++---------- jOOQ/src/main/java/org/jooq/impl/NotField.java | 5 +++-- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java b/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java index 4190e79b8f..703e91f2c5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java +++ b/jOOQ/src/main/java/org/jooq/impl/ConditionAsField.java @@ -39,11 +39,9 @@ package org.jooq.impl; import static org.jooq.impl.DSL.inline; import static org.jooq.impl.DSL.not; -import static org.jooq.impl.SQLDataType.BOOLEAN; import org.jooq.Condition; import org.jooq.Context; -import org.jooq.DataType; /** * @author Lukas Eder @@ -57,11 +55,7 @@ final class ConditionAsField extends AbstractField { final Condition condition; ConditionAsField(Condition condition) { - this(condition, BOOLEAN); - } - - ConditionAsField(Condition condition, DataType dataType) { - super(DSL.name(condition.toString()), dataType); + super(DSL.name(condition.toString()), SQLDataType.BOOLEAN); this.condition = condition; } @@ -86,9 +80,9 @@ final class ConditionAsField extends AbstractField { case FIREBIRD: // [#3206] Correct implementation of three-valued logic is important here - ctx.visit(DSL.when(condition, inline(true, getDataType())) - .when(not(condition), inline(false, getDataType())) - .otherwise(inline((Boolean) null, getDataType()))); + ctx.visit(DSL.when(condition, inline(true)) + .when(not(condition), inline(false)) + .otherwise(inline((Boolean) null))); break; // These databases can inline predicates in column expression contexts diff --git a/jOOQ/src/main/java/org/jooq/impl/NotField.java b/jOOQ/src/main/java/org/jooq/impl/NotField.java index ca2e9a98e2..c030afe61d 100644 --- a/jOOQ/src/main/java/org/jooq/impl/NotField.java +++ b/jOOQ/src/main/java/org/jooq/impl/NotField.java @@ -42,6 +42,7 @@ import static org.jooq.Clause.CONDITION_NOT; import static org.jooq.impl.DSL.condition; import static org.jooq.impl.DSL.not; import static org.jooq.impl.Keywords.K_NOT; +import static org.jooq.impl.SQLDataType.BOOLEAN; import org.jooq.Clause; import org.jooq.Context; @@ -55,7 +56,7 @@ final class NotField extends AbstractField { private final Field field; NotField(Field field) { - super(DSL.name("not"), field.getDataType()); + super(DSL.name("not"), BOOLEAN); this.field = field; } @@ -78,7 +79,7 @@ final class NotField extends AbstractField { - ctx.visit(new ConditionAsField(not(condition(field)), field.getDataType())); + ctx.visit(DSL.field(not(condition(field)))); break;