From aecc0e5b4c2db29f35622b7e4e5f2b935670a08f Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 8 Dec 2020 17:49:02 +0100 Subject: [PATCH] [jOOQ/jOOQ#11061] [jOOQ/jOOQ#11070] [jOOQ/jOOQ#11091] ROWNUM --- .../java/org/jooq/impl/AbstractQuery.java | 1 - jOOQ/src/main/java/org/jooq/impl/DSL.java | 29 ++++------ .../org/jooq/impl/DefaultRenderContext.java | 17 ------ .../org/jooq/impl/ForceSettingsSignal.java | 58 +++++++++++++++++++ jOOQ/src/main/java/org/jooq/impl/Plus.java | 1 - jOOQ/src/main/java/org/jooq/impl/Rownum.java | 10 ++++ jOOQ/src/main/java/org/jooq/impl/Tools.java | 7 ++- 7 files changed, 84 insertions(+), 39 deletions(-) create mode 100644 jOOQ/src/main/java/org/jooq/impl/ForceSettingsSignal.java diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java b/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java index 234d5b32c4..80341e7451 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java @@ -82,7 +82,6 @@ import org.jooq.conf.StatementType; import org.jooq.exception.ControlFlowSignal; import org.jooq.exception.DataAccessException; import org.jooq.exception.DetachedException; -import org.jooq.impl.DefaultRenderContext.ForceSettingsSignal; import org.jooq.tools.Ints; import org.jooq.tools.JooqLogger; diff --git a/jOOQ/src/main/java/org/jooq/impl/DSL.java b/jOOQ/src/main/java/org/jooq/impl/DSL.java index b6b81a12f9..0dbe43977f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DSL.java +++ b/jOOQ/src/main/java/org/jooq/impl/DSL.java @@ -15367,6 +15367,18 @@ public class DSL { return new Rtrim(string); } + + + + + + + + + + + + /** * The SIGN function. */ @@ -20294,23 +20306,6 @@ public class DSL { - - - - - - - - - - - - - - - - - diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java index 42a653f3f0..02a8890acc 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java @@ -959,21 +959,4 @@ class DefaultRenderContext extends AbstractContext implements Ren log.debug("Re-render query", "Forcing bind variable inlining as " + configuration().dialect() + " does not support " + params + " bind variables (or more) in a single query"); } } - - /** - * A query rendering signal to force re-rendering a query with different - * settings. - */ - static class ForceSettingsSignal extends ControlFlowSignal { - - /** - * Generated UID - */ - private static final long serialVersionUID = -1530836969063166588L; - final Settings settings; - - ForceSettingsSignal(Settings settings) { - this.settings = settings; - } - } } diff --git a/jOOQ/src/main/java/org/jooq/impl/ForceSettingsSignal.java b/jOOQ/src/main/java/org/jooq/impl/ForceSettingsSignal.java new file mode 100644 index 0000000000..d3cacba918 --- /dev/null +++ b/jOOQ/src/main/java/org/jooq/impl/ForceSettingsSignal.java @@ -0,0 +1,58 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * Other licenses: + * ----------------------------------------------------------------------------- + * Commercial licenses for this work are available. These replace the above + * ASL 2.0 and offer limited warranties, support, maintenance, and commercial + * database integrations. + * + * For more information, please visit: http://www.jooq.org/licenses + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + */ +package org.jooq.impl; + +import org.jooq.conf.Settings; +import org.jooq.exception.ControlFlowSignal; + +/** + * A query rendering signal to force re-rendering a query with different + * settings. + */ +class ForceSettingsSignal extends ControlFlowSignal { + + /** + * Generated UID + */ + private static final long serialVersionUID = -1530836969063166588L; + final Settings settings; + + ForceSettingsSignal(Settings settings) { + this.settings = settings; + } +} \ No newline at end of file diff --git a/jOOQ/src/main/java/org/jooq/impl/Plus.java b/jOOQ/src/main/java/org/jooq/impl/Plus.java index cba147283f..762c8fc6e5 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Plus.java +++ b/jOOQ/src/main/java/org/jooq/impl/Plus.java @@ -89,6 +89,5 @@ package org.jooq.impl; - diff --git a/jOOQ/src/main/java/org/jooq/impl/Rownum.java b/jOOQ/src/main/java/org/jooq/impl/Rownum.java index 84a31199a1..197b988392 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Rownum.java +++ b/jOOQ/src/main/java/org/jooq/impl/Rownum.java @@ -76,6 +76,16 @@ package org.jooq.impl; + + + + + + + + + + diff --git a/jOOQ/src/main/java/org/jooq/impl/Tools.java b/jOOQ/src/main/java/org/jooq/impl/Tools.java index b85f66b190..7a0bcbfb44 100644 --- a/jOOQ/src/main/java/org/jooq/impl/Tools.java +++ b/jOOQ/src/main/java/org/jooq/impl/Tools.java @@ -288,7 +288,6 @@ import org.jooq.exception.MappingException; import org.jooq.exception.NoDataFoundException; import org.jooq.exception.TemplatingException; import org.jooq.exception.TooManyRowsException; -import org.jooq.impl.DefaultRenderContext.ForceSettingsSignal; import org.jooq.impl.ResultsImpl.ResultOrRowsImpl; import org.jooq.tools.Ints; import org.jooq.tools.JooqLogger; @@ -301,8 +300,6 @@ import org.jooq.types.UInteger; import org.jooq.types.ULong; import org.jooq.types.UShort; -import org.jetbrains.annotations.NotNull; - /** * General internal jOOQ utilities * @@ -5912,6 +5909,10 @@ final class Tools { : (DataType) field.getDataType(); } + static final DataType allNotNull(DataType defaultType) { + return defaultType.notNull(); + } + static final DataType allNotNull(DataType defaultType, Field f1) { return dataType(defaultType, f1, true); }