Package org.apache.cassandra.auth
Class DataResource
java.lang.Object
org.apache.cassandra.auth.DataResource
- All Implemented Interfaces:
IResource
The primary type of resource in Cassandra.
Used to represent a table or a keyspace or the root level "data" resource.
"data" - the root level data resource.
"data/keyspace_name" - keyspace-level data resource.
"data/keyspace_name/*" - all tables-level data resource.
"data/keyspace_name/table_name" - table-level data resource.
-
Method Summary
Modifier and TypeMethodDescriptionstatic DataResourceCreates a DataResource representing all tables of a keyspace.Returns the set of Permissions that may be applied to this resource Certain permissions are not applicable to particular types of resources.booleanbooleanexists()static DataResourceParses a data resource name into a DataResource instance.getName()Gets next resource in the hierarchy.getTable()inthashCode()booleanIndicates whether or not this resource has a parent in the hierarchy.booleanbooleanbooleanbooleanstatic DataResourceCreates a DataResource representing a keyspace.static DataResourceroot()static DataResourceCreates a DataResource instance representing a table.toString()
-
Method Details
-
root
- Returns:
- the root-level resource.
-
keyspace
Creates a DataResource representing a keyspace.- Parameters:
keyspace- Name of the keyspace.- Returns:
- DataResource instance representing the keyspace.
-
allTables
Creates a DataResource representing all tables of a keyspace.- Parameters:
keyspace- Name of the keyspace.- Returns:
- DataResource instance representing the keyspace.
-
table
Creates a DataResource instance representing a table.- Parameters:
keyspace- Name of the keyspace.table- Name of the table.- Returns:
- DataResource instance representing the column family.
-
fromName
Parses a data resource name into a DataResource instance.- Parameters:
name- Name of the data resource.- Returns:
- DataResource instance matching the name.
-
getName
-
getParent
Description copied from interface:IResourceGets next resource in the hierarchy. Call hasParent first to make sure there is one. -
isRootLevel
public boolean isRootLevel() -
isKeyspaceLevel
public boolean isKeyspaceLevel() -
isAllTablesLevel
public boolean isAllTablesLevel() -
isTableLevel
public boolean isTableLevel() -
getKeyspace
- Returns:
- keyspace of the resource. Throws IllegalStateException if it's the root-level resource.
-
getTable
- Returns:
- column family of the resource. Throws IllegalStateException if it's not a table-level resource.
-
hasParent
public boolean hasParent()Description copied from interface:IResourceIndicates whether or not this resource has a parent in the hierarchy. Please perform this check before calling getParent() method. -
exists
public boolean exists() -
applicablePermissions
Description copied from interface:IResourceReturns the set of Permissions that may be applied to this resource Certain permissions are not applicable to particular types of resources. For instance, it makes no sense to talk about CREATE permission on table, or SELECT on a Role. Here we filter a set of permissions depending on the specific resource they're being applied to. This is necessary because the CQL syntax supports ALL as wildcard, but the set of permissions that should resolve to varies by IResource.- Specified by:
applicablePermissionsin interfaceIResource- Returns:
- the permissions that may be granted on the specific resource
-
toString
-
equals
-
hashCode
public int hashCode()
-