From 2f943d6c7c2c9b5a8be673ccd43dbb973c734fa2 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Thu, 17 Dec 2020 09:58:50 +0100 Subject: [PATCH] [jOOQ/jOOQ#11136] Add Name.qualifierQualified() to check if a Name's qualifier (if any) is qualified as well --- jOOQ/src/main/java/org/jooq/Name.java | 13 ++++++++++++- jOOQ/src/main/java/org/jooq/impl/QualifiedName.java | 5 +++++ .../main/java/org/jooq/impl/UnqualifiedName.java | 5 +++++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/jOOQ/src/main/java/org/jooq/Name.java b/jOOQ/src/main/java/org/jooq/Name.java index 800a2ed925..2998989594 100644 --- a/jOOQ/src/main/java/org/jooq/Name.java +++ b/jOOQ/src/main/java/org/jooq/Name.java @@ -156,10 +156,21 @@ public interface Name extends QueryPart, Comparable { /** * Whether this is a qualified name. *

- * This is true as soon as {@link #getName()} has a length of more than 1. + * This is true as soon as {@link #getName()} has a length of + * more than 1 and {@link #qualifier()} is not null. */ boolean qualified(); + /** + * Whether this is a qualified name and the {@link #qualifier()} is also a + * qualified name. + *

+ * This is true as soon as {@link #getName()} has a length of + * more than 2 and {@link #qualifier()} is not null and its + * {@link #qualified()} property is also true. + */ + boolean qualifierQualified(); + /** * This name's qualifier (if it is {@link #qualified()}), or null. */ diff --git a/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java b/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java index a079846e2b..80c060e5cd 100644 --- a/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java +++ b/jOOQ/src/main/java/org/jooq/impl/QualifiedName.java @@ -192,6 +192,11 @@ final class QualifiedName extends AbstractName { return qualifiedName.length > 1; } + @Override + public final boolean qualifierQualified() { + return qualifiedName.length > 2; + } + @Override public final Name qualifier() { if (qualifiedName.length <= 1) diff --git a/jOOQ/src/main/java/org/jooq/impl/UnqualifiedName.java b/jOOQ/src/main/java/org/jooq/impl/UnqualifiedName.java index e72ecf8bd5..9265b7232b 100644 --- a/jOOQ/src/main/java/org/jooq/impl/UnqualifiedName.java +++ b/jOOQ/src/main/java/org/jooq/impl/UnqualifiedName.java @@ -106,6 +106,11 @@ final class UnqualifiedName extends AbstractName { return false; } + @Override + public final boolean qualifierQualified() { + return false; + } + @Override public final Name qualifier() { return null;