diff --git a/jOOQ/src/main/java/org/jooq/DSLContext.java b/jOOQ/src/main/java/org/jooq/DSLContext.java index 7fb538b2c6..c08eaa3e84 100644 --- a/jOOQ/src/main/java/org/jooq/DSLContext.java +++ b/jOOQ/src/main/java/org/jooq/DSLContext.java @@ -9563,37 +9563,37 @@ public interface DSLContext extends Scope , AutoCloseable { /** * Grant a privilege on a table to user or role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantOnStep grant(Privilege privilege); /** * Grant privileges on a table to user or role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantOnStep grant(Privilege... privileges); /** * Grant privileges on a table to user or role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantOnStep grant(Collection privileges); /** * Revoke a privilege on table from user or role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeOnStep revoke(Privilege privilege); /** * Revoke privileges on table from user or role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeOnStep revoke(Privilege... privileges); /** * Revoke privileges on table from user or role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeOnStep revoke(Collection privileges); /** diff --git a/jOOQ/src/main/java/org/jooq/GrantOnStep.java b/jOOQ/src/main/java/org/jooq/GrantOnStep.java index 1dc9164d54..b91bd58b05 100644 --- a/jOOQ/src/main/java/org/jooq/GrantOnStep.java +++ b/jOOQ/src/main/java/org/jooq/GrantOnStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.H2; import static org.jooq.SQLDialect.HSQLDB; // ... @@ -55,13 +56,13 @@ public interface GrantOnStep { /** * Grant a privilege on a table. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantToStep on(Table table); /** * Grant a privilege on a table. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantToStep on(Name table); /** @@ -73,6 +74,6 @@ public interface GrantOnStep { * escape literals when concatenated into SQL clauses! */ @PlainSQL - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantToStep on(String table); } diff --git a/jOOQ/src/main/java/org/jooq/GrantToStep.java b/jOOQ/src/main/java/org/jooq/GrantToStep.java index 3e4536ce85..12369a5fc4 100644 --- a/jOOQ/src/main/java/org/jooq/GrantToStep.java +++ b/jOOQ/src/main/java/org/jooq/GrantToStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.H2; import static org.jooq.SQLDialect.HSQLDB; // ... @@ -55,18 +56,18 @@ public interface GrantToStep { /** * Grant a privilege to a user. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantWithGrantOptionStep to(User user); /** * Grant a privilege to a role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantWithGrantOptionStep to(Role role); /** * Grant a privilege to PUBLIC. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) GrantWithGrantOptionStep toPublic(); } diff --git a/jOOQ/src/main/java/org/jooq/RevokeFromStep.java b/jOOQ/src/main/java/org/jooq/RevokeFromStep.java index 1d8ed39491..efb0a5a6c8 100644 --- a/jOOQ/src/main/java/org/jooq/RevokeFromStep.java +++ b/jOOQ/src/main/java/org/jooq/RevokeFromStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.H2; import static org.jooq.SQLDialect.HSQLDB; // ... @@ -55,18 +56,18 @@ public interface RevokeFromStep { /** * Revoke a privilege from a user. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeFinalStep from(User user); /** * Revoke a privilege from a role. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeFinalStep from(Role role); /** * Revoke a privilege from PUBLIC. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeFinalStep fromPublic(); } diff --git a/jOOQ/src/main/java/org/jooq/RevokeOnStep.java b/jOOQ/src/main/java/org/jooq/RevokeOnStep.java index 28cf88d168..2a8c1c2b5f 100644 --- a/jOOQ/src/main/java/org/jooq/RevokeOnStep.java +++ b/jOOQ/src/main/java/org/jooq/RevokeOnStep.java @@ -37,6 +37,7 @@ */ package org.jooq; +import static org.jooq.SQLDialect.DERBY; import static org.jooq.SQLDialect.H2; import static org.jooq.SQLDialect.HSQLDB; // ... @@ -55,13 +56,13 @@ public interface RevokeOnStep { /** * Revoke a privilege on a table. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeFromStep on(Table table); /** * Revoke a privilege on a table. */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeFromStep on(Name table); /** @@ -73,6 +74,6 @@ public interface RevokeOnStep { * escape literals when concatenated into SQL clauses! */ @PlainSQL - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) RevokeFromStep on(String table); } diff --git a/jOOQ/src/main/java/org/jooq/impl/DSL.java b/jOOQ/src/main/java/org/jooq/impl/DSL.java index 757410fcc7..6f4b1bfd8e 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DSL.java +++ b/jOOQ/src/main/java/org/jooq/impl/DSL.java @@ -7887,7 +7887,7 @@ public class DSL { * * @see #grant(Collection) */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) public static GrantOnStep grant(Privilege privilege) { return using(new DefaultConfiguration()).grant(privilege); } @@ -7913,7 +7913,7 @@ public class DSL { * * @see #grant(Collection) */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) public static GrantOnStep grant(Privilege... privileges) { return using(new DefaultConfiguration()).grant(privileges); } @@ -7939,7 +7939,7 @@ public class DSL { * * @see #grant(Privilege...) */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) public static GrantOnStep grant(Collection privileges) { return using(new DefaultConfiguration()).grant(privileges); } @@ -7965,7 +7965,7 @@ public class DSL { * * @see #revoke(Collection) */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) public static RevokeOnStep revoke(Privilege privilege) { return using(new DefaultConfiguration()).revoke(privilege); } @@ -7991,7 +7991,7 @@ public class DSL { * * @see #revoke(Collection) */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) public static RevokeOnStep revoke(Privilege... privileges) { return using(new DefaultConfiguration()).revoke(privileges); } @@ -8017,7 +8017,7 @@ public class DSL { * * @see #revoke(Privilege...) */ - @Support({ H2, HSQLDB, POSTGRES }) + @Support({ DERBY, H2, HSQLDB, POSTGRES }) public static RevokeOnStep revoke(Collection privileges) { return using(new DefaultConfiguration()).revoke(privileges); } diff --git a/jOOQ/src/main/java/org/jooq/impl/GrantImpl.java b/jOOQ/src/main/java/org/jooq/impl/GrantImpl.java index 559a310975..401628da5f 100644 --- a/jOOQ/src/main/java/org/jooq/impl/GrantImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/GrantImpl.java @@ -53,7 +53,6 @@ import java.util.Collection; import org.jooq.Clause; import org.jooq.Configuration; import org.jooq.Context; -import org.jooq.GrantFinalStep; import org.jooq.GrantOnStep; import org.jooq.GrantToStep; import org.jooq.GrantWithGrantOptionStep; @@ -72,8 +71,7 @@ final class GrantImpl extends AbstractQuery implements // Cascading interface implementations for Select behaviour GrantOnStep, GrantToStep, - GrantWithGrantOptionStep, - GrantFinalStep { + GrantWithGrantOptionStep { /** * Generated UID diff --git a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java index eeef75a10a..2f7699d803 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/ParserImpl.java @@ -1305,6 +1305,7 @@ class ParserImpl implements Parser { } parseKeyword(ctx, "ON"); + parseKeywordIf(ctx, "TABLE"); Table table = parseTableName(ctx); parseKeyword(ctx, "TO"); @@ -1330,6 +1331,7 @@ class ParserImpl implements Parser { } parseKeyword(ctx, "ON"); + parseKeywordIf(ctx, "TABLE"); Table table = parseTableName(ctx); RevokeOnStep s1 = privileges == null ? ctx.dsl.revoke(privilege) : ctx.dsl.revoke(privileges);