org.h2.engine

## Class Right

- java.lang.Object
- - org.h2.engine.DbObject
  - - org.h2.engine.Right

- All Implemented Interfaces:
    org.h2.util.HasSQL

      public final class Right
      extends DbObject

  An access right. Rights are regular database objects, but have generated names.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `ALL` The right bit mask that means: select, insert, update, delete, and update for this object is allowed.
    `static int` | `ALTER_ANY_SCHEMA` The right bit mask that means: create/alter/drop schema is allowed.
    `static int` | `DELETE` The right bit mask that means: deleting rows from a table is allowed.
    `static int` | `INSERT` The right bit mask that means: inserting rows into a table is allowed.
    `static int` | `SCHEMA_OWNER` The right bit mask that means: user is a schema owner.
    `static int` | `SELECT` The right bit mask that means: selecting from a table is allowed.
    `static int` | `UPDATE` The right bit mask that means: updating data is allowed.

    - ### Fields inherited from class org.h2.engine.DbObject

      `AGGREGATE, comment, COMMENT, CONSTANT, CONSTRAINT, database, DOMAIN, FUNCTION_ALIAS, INDEX, RIGHT, ROLE, SCHEMA, SEQUENCE, SETTING, SYNONYM, TABLE_OR_VIEW, trace, TRIGGER, USER`

    - ### Fields inherited from interface org.h2.util.HasSQL

      `ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Right(Database db, int id, RightOwner grantee, int grantedRight, DbObject grantedObject)`
    `Right(Database db, int id, RightOwner grantee, Role grantedRole)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `checkRename()` Check if renaming is allowed.
    `java.lang.String` | `getCreateSQL()` Construct the CREATE ...
    `java.lang.String` | `getCreateSQLForCopy(org.h2.table.Table table, java.lang.String quotedName)` Build a SQL statement to re-create the object, or to create a copy of the object with a different name or referencing a different table
    `DbObject` | `getGrantedObject()`
    `Role` | `getGrantedRole()`
    `DbObject` | `getGrantee()`
    `int` | `getRightMask()`
    `java.lang.String` | `getRights()`
    `int` | `getType()` Get the object type.
    `void` | `removeChildrenAndResources(SessionLocal session)` Delete all dependent children objects and resources of this object.
    `void` | `setRightMask(int rightMask)`

    - ### Methods inherited from class org.h2.engine.DbObject

      `getChildren, getComment, getCreateSQLForMeta, getDatabase, getDropSQL, getId, getModificationId, getName, getSQL, getSQL, invalidate, isTemporary, isValid, rename, setComment, setModified, setObjectName, setTemporary, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.h2.util.HasSQL

      `getTraceSQL`

- - ### Field Detail

    - #### SELECT

          public static final int SELECT

      The right bit mask that means: selecting from a table is allowed.
      See Also:
        Constant Field Values

    - #### DELETE

          public static final int DELETE

      The right bit mask that means: deleting rows from a table is allowed.
      See Also:
        Constant Field Values

    - #### INSERT

          public static final int INSERT

      The right bit mask that means: inserting rows into a table is allowed.
      See Also:
        Constant Field Values

    - #### UPDATE

          public static final int UPDATE

      The right bit mask that means: updating data is allowed.
      See Also:
        Constant Field Values

    - #### ALTER_ANY_SCHEMA

          public static final int ALTER_ANY_SCHEMA

      The right bit mask that means: create/alter/drop schema is allowed.
      See Also:
        Constant Field Values

    - #### SCHEMA_OWNER

          public static final int SCHEMA_OWNER

      The right bit mask that means: user is a schema owner. This mask isn't used in GRANT / REVOKE statements.
      See Also:
        Constant Field Values

    - #### ALL

          public static final int ALL

      The right bit mask that means: select, insert, update, delete, and update for this object is allowed.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Right

          public Right(Database db,
                       int id,
                       RightOwner grantee,
                       Role grantedRole)

    - #### Right

          public Right(Database db,
                       int id,
                       RightOwner grantee,
                       int grantedRight,
                       DbObject grantedObject)

  - ### Method Detail

    - #### getRights

          public java.lang.String getRights()

    - #### getGrantedRole

          public Role getGrantedRole()

    - #### getGrantedObject

          public DbObject getGrantedObject()

    - #### getGrantee

          public DbObject getGrantee()

    - #### getCreateSQLForCopy

          public java.lang.String getCreateSQLForCopy(org.h2.table.Table table,
                                                      java.lang.String quotedName)

      Description copied from class: `DbObject`
      Build a SQL statement to re-create the object, or to create a copy of the object with a different name or referencing a different table
      Overrides:
        `getCreateSQLForCopy` in class `DbObject`
      Parameters:
        `table` - the new table
        `quotedName` - the quoted name
      Returns:
        the SQL statement

    - #### getCreateSQL

          public java.lang.String getCreateSQL()

      Description copied from class: `DbObject`
      Construct the CREATE ... SQL statement for this object.
      Specified by:
        `getCreateSQL` in class `DbObject`
      Returns:
        the SQL statement

    - #### getType

          public int getType()

      Description copied from class: `DbObject`
      Get the object type.
      Specified by:
        `getType` in class `DbObject`
      Returns:
        the object type

    - #### removeChildrenAndResources

          public void removeChildrenAndResources(SessionLocal session)

      Description copied from class: `DbObject`
      Delete all dependent children objects and resources of this object.
      Specified by:
        `removeChildrenAndResources` in class `DbObject`
      Parameters:
        `session` - the session

    - #### checkRename

          public void checkRename()

      Description copied from class: `DbObject`
      Check if renaming is allowed. Does nothing when allowed.
      Overrides:
        `checkRename` in class `DbObject`

    - #### setRightMask

          public void setRightMask(int rightMask)

    - #### getRightMask

          public int getRightMask()