[jOOQ/jOOQ#14153] Make NullStatement a UTransient QueryPart

This commit is contained in:
Lukas Eder 2022-10-31 10:22:12 +01:00
parent e8a4b7b89b
commit 5e0d00afec
2 changed files with 6 additions and 3 deletions

View File

@ -73,7 +73,9 @@ import static org.jooq.impl.Keywords.K_IF;
import static org.jooq.impl.Keywords.K_NOT;
import static org.jooq.impl.Keywords.K_THEN;
import static org.jooq.impl.Keywords.K_TRUE;
import static org.jooq.impl.Tools.collect;
import static org.jooq.impl.Tools.decrement;
import static org.jooq.impl.Tools.filter;
import static org.jooq.impl.Tools.increment;
import static org.jooq.impl.Tools.toplevel;
import static org.jooq.impl.Tools.BooleanDataKey.DATA_FORCE_STATIC_STATEMENT;
@ -138,7 +140,8 @@ final class BlockImpl extends AbstractRowCountQuery implements Block {
BlockImpl(Configuration configuration, Collection<? extends Statement> statements, boolean alwaysWrapInBeginEnd) {
super(configuration);
this.statements = statements;
// [#14153] Remove NullStatement as it is UTransient
this.statements = collect(filter(statements, s -> !(s instanceof NullStatement)));
this.alwaysWrapInBeginEnd = alwaysWrapInBeginEnd;
}

View File

@ -46,7 +46,7 @@ import static org.jooq.impl.Keywords.K_IF;
import static org.jooq.impl.Keywords.K_NULL;
import org.jooq.Context;
import org.jooq.impl.QOM.UEmpty;
import org.jooq.impl.QOM.UTransient;
/**
* @author Lukas Eder
@ -56,7 +56,7 @@ extends
AbstractStatement
implements
QOM.NullStatement,
UEmpty
UTransient
{
static final NullStatement INSTANCE = new NullStatement();