From d401ab5b4f102d3fc8f18a90a381928bb29d4757 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Thu, 5 Jan 2017 13:03:08 +0100 Subject: [PATCH] [#5770] Add Field.notContains() --- jOOQ/src/main/java/org/jooq/Field.java | 12 ++++++++++++ jOOQ/src/main/java/org/jooq/impl/AbstractField.java | 10 ++++++++++ 2 files changed, 22 insertions(+) diff --git a/jOOQ/src/main/java/org/jooq/Field.java b/jOOQ/src/main/java/org/jooq/Field.java index 019fa09c74..ce04847c69 100644 --- a/jOOQ/src/main/java/org/jooq/Field.java +++ b/jOOQ/src/main/java/org/jooq/Field.java @@ -1410,6 +1410,18 @@ public interface Field extends SelectField, GroupField, FieldOrRow { @Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE }) Condition contains(Field value); + /** + * Inverse of {@link #contains(Object)}. + */ + @Support + Condition notContains(T value); + + /** + * Inverse of {@link #contains(Field)}. + */ + @Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE }) + Condition notContains(Field value); + /** * Convenience method for {@link #like(String, char)} including proper * adding of wildcards and escaping. diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java index 43d04f19b2..941d4f5ff8 100644 --- a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java @@ -825,6 +825,16 @@ abstract class AbstractField extends AbstractQueryPart implements Field { return new Contains(this, value); } + @Override + public final Condition notContains(T value) { + return contains(value).not(); + } + + @Override + public final Condition notContains(Field value) { + return contains(value).not(); + } + @Override public final Condition startsWith(T value) { Field concat = DSL.concat(Tools.escapeForLike(value), inline("%"));