Package org.h2.engine
Class RightOwner
java.lang.Object
org.h2.engine.DbObject
org.h2.engine.RightOwner
- All Implemented Interfaces:
HasSQL
A right owner (sometimes called principal).
-
Field Summary
FieldsModifier and TypeFieldDescriptionThe map of granted rights.The map of granted roles.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
ConstructorsModifierConstructorDescriptionprotected
RightOwner
(Database database, int id, String name, int traceModuleId) -
Method Summary
Modifier and TypeMethodDescriptionfinal void
Check that this right owner does not own any schema.getRightForObject
(DbObject object) Get the 'grant schema' right of this object.getRightForRole
(Role role) Get the 'grant role' right of this object.void
grantRight
(DbObject object, Right right) Grant a right for the given table.void
Grant a role to this object.boolean
isRoleGranted
(Role grantedRole) Check if a role has been granted for this right owner.(package private) final boolean
isSchemaRightGrantedRecursive
(Schema schema) Checks if a schema owner right is already granted to this object or to objects that were granted to this object.(package private) final boolean
isTableRightGrantedRecursive
(Table table, int rightMask) Checks if a right is already granted to this object or to objects that were granted to this object.void
Rename the object.(package private) void
revokeRight
(DbObject object) Revoke the right for the given object (table or schema).(package private) void
revokeRole
(Role role) Remove the right for the given role.void
Remove all the temporary rights granted on rolesMethods inherited from class org.h2.engine.DbObject
checkRename, getChildren, getComment, getCreateSQL, getCreateSQLForCopy, getCreateSQLForMeta, getDatabase, getDropSQL, getId, getModificationId, getName, getSQL, getSQL, getType, invalidate, isTemporary, isValid, removeChildrenAndResources, 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 Details
-
grantedRoles
The map of granted roles. -
grantedRights
The map of granted rights.
-
-
Constructor Details
-
RightOwner
-
-
Method Details
-
rename
Description copied from class:DbObject
Rename the object. -
isRoleGranted
Check if a role has been granted for this right owner.- Parameters:
grantedRole
- the role- Returns:
- true if the role has been granted
-
isTableRightGrantedRecursive
Checks if a right is already granted to this object or to objects that were granted to this object. The rights of schemas will be valid for every each table in the related schema. The ALTER ANY SCHEMA right gives all rights to all tables.- Parameters:
table
- the table to checkrightMask
- the right mask to check- Returns:
- true if the right was already granted
-
isSchemaRightGrantedRecursive
Checks if a schema owner right is already granted to this object or to objects that were granted to this object. The ALTER ANY SCHEMA right gives rights to all schemas.- Parameters:
schema
- the schema to check, ornull
to check for ALTER ANY SCHEMA right only- Returns:
- true if the right was already granted
-
grantRight
Grant a right for the given table. Only one right object per table is supported.- Parameters:
object
- the object (table or schema)right
- the right
-
revokeRight
Revoke the right for the given object (table or schema).- Parameters:
object
- the object
-
grantRole
Grant a role to this object.- Parameters:
role
- the roleright
- the right to grant
-
revokeRole
Remove the right for the given role.- Parameters:
role
- the role to revoke
-
revokeTemporaryRightsOnRoles
public void revokeTemporaryRightsOnRoles()Remove all the temporary rights granted on roles -
getRightForObject
Get the 'grant schema' right of this object.- Parameters:
object
- the granted object (table or schema)- Returns:
- the right or null if the right has not been granted
-
getRightForRole
Get the 'grant role' right of this object.- Parameters:
role
- the granted role- Returns:
- the right or null if the right has not been granted
-
checkOwnsNoSchemas
public final void checkOwnsNoSchemas()Check that this right owner does not own any schema. An exception is thrown if it owns one or more schemas.- Throws:
DbException
- if this right owner owns a schema
-