Class: QueryBuilder::CQL::Contexts::Permission

Inherits:
Base
  • Object
show all
Defined in:
lib/query_builder/cql/contexts/permission.rb

Overview

Describes the Cassandra table index

Instance Method Summary collapse

Instance Method Details

#grant_to(name) ⇒ QueryBuilder::Statements::Grant

Builds the ‘GRANT’ CQL statement

Parameters:

  • name (#to_s)

    The name of either a user or role

Returns:

  • (QueryBuilder::Statements::Grant)


41
42
43
# File 'lib/query_builder/cql/contexts/permission.rb', line 41

def grant_to(name)
  Statements::Grant.new(context: self, name: name)
end

#of(name) ⇒ QueryBuilder::Statements::ListPermissions

Builds the ‘LIST PERMISSIONS’ CQL statement

Parameters:

  • name (#to_s)

    The name of either a user or role

Returns:

  • (QueryBuilder::Statements::ListPermissions)


31
32
33
# File 'lib/query_builder/cql/contexts/permission.rb', line 31

def of(name)
  Statements::ListPermissions.new(context: self, name: name)
end

#revoke_from(name) ⇒ QueryBuilder::Statements::Revoke

Builds the ‘REVOKE’ CQL statement

Parameters:

  • name (#to_s)

    The name of either a user or role

Returns:

  • (QueryBuilder::Statements::Revoke)


51
52
53
# File 'lib/query_builder/cql/contexts/permission.rb', line 51

def revoke_from(name)
  Statements::Revoke.new(context: self, name: name)
end

#to_sString

Returns the name of the context for permission

Returns:

  • (String)


19
20
21
22
23
# File 'lib/query_builder/cql/contexts/permission.rb', line 19

def to_s
  return "TABLE #{table}" if table
  return "KEYSPACE #{keyspace}" if keyspace
  "ALL KEYSPACES"
end