From bc21b67fe254938d44764e7e8ec07a81e58bc02a Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 30 Sep 2021 12:43:54 +0200 Subject: [PATCH] [jOOQ/jOOQ#12425] Added QOM API tests - Validating visibilities of U, M prefixed types - Validating nullability of methods - Fixed some Iterable methods that should be annotated as NotNull --- jOOQ/src/main/java/org/jooq/Migration.java | 3 +++ jOOQ/src/main/java/org/jooq/impl/QOM.java | 20 ++++++++++++++------ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/Migration.java b/jOOQ/src/main/java/org/jooq/Migration.java index c2793b2ca2..5f008f31ad 100644 --- a/jOOQ/src/main/java/org/jooq/Migration.java +++ b/jOOQ/src/main/java/org/jooq/Migration.java @@ -40,6 +40,8 @@ package org.jooq; import org.jooq.exception.DataMigrationException; import org.jooq.exception.DataMigrationValidationException; +import org.jetbrains.annotations.NotNull; + /** * An executable migration between two {@link Commit} instances. *

@@ -64,6 +66,7 @@ public interface Migration extends Scope { /** * The queries that are executed by the migration. */ + @NotNull Queries queries(); /** diff --git a/jOOQ/src/main/java/org/jooq/impl/QOM.java b/jOOQ/src/main/java/org/jooq/impl/QOM.java index 0b379a23c2..aeac80c9bb 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QOM.java +++ b/jOOQ/src/main/java/org/jooq/impl/QOM.java @@ -2793,8 +2793,10 @@ public final class QOM { interface UOperator1 extends MQueryPart { Q1 $arg1(); - default R $arg1(Q1 newArg1) { return constructor().apply(newArg1); } + @NotNull default R $arg1(Q1 newArg1) { return constructor().apply(newArg1); } + + @NotNull Function1 constructor(); default T transform(Function1 function) { @@ -2811,6 +2813,7 @@ public final class QOM { return QOM.traverse(current, abort, recurse, accumulate, this, $arg1()); }; + @NotNull @Override default MQueryPart replace( Predicate recurse, @@ -2829,9 +2832,11 @@ public final class QOM { interface UOperator2 extends MQueryPart { Q1 $arg1(); Q2 $arg2(); - default R $arg1(Q1 newArg1) { return constructor().apply(newArg1, $arg2()); } - default R $arg2(Q2 newArg2) { return constructor().apply($arg1(), newArg2); } + @NotNull default R $arg1(Q1 newArg1) { return constructor().apply(newArg1, $arg2()); } + @NotNull default R $arg2(Q2 newArg2) { return constructor().apply($arg1(), newArg2); } + + @NotNull Function2 constructor(); default T transform(Function2 function) { @@ -2848,6 +2853,7 @@ public final class QOM { return QOM.traverse(current, abort, recurse, accumulate, this, $arg1(), $arg2()); }; + @NotNull @Override default MQueryPart replace( Predicate recurse, @@ -2868,10 +2874,11 @@ public final class QOM { Q1 $arg1(); Q2 $arg2(); Q3 $arg3(); - default R $arg1(Q1 newArg1) { return constructor().apply(newArg1, $arg2(), $arg3()); } - default R $arg2(Q2 newArg2) { return constructor().apply($arg1(), newArg2, $arg3()); } - default R $arg3(Q3 newArg3) { return constructor().apply($arg1(), $arg2(), newArg3); } + @NotNull default R $arg1(Q1 newArg1) { return constructor().apply(newArg1, $arg2(), $arg3()); } + @NotNull default R $arg2(Q2 newArg2) { return constructor().apply($arg1(), newArg2, $arg3()); } + @NotNull default R $arg3(Q3 newArg3) { return constructor().apply($arg1(), $arg2(), newArg3); } + @NotNull Function3 constructor(); default T transform(Function3 function) { @@ -2888,6 +2895,7 @@ public final class QOM { return QOM.traverse(current, abort, recurse, accumulate, this, $arg1(), $arg2(), $arg3()); }; + @NotNull @Override default MQueryPart replace( Predicate recurse,