Module: Ez::Permissions::API::Roles

Included in:
Ez::Permissions::API
Defined in:
lib/ez/permissions/api/roles.rb

Constant Summary collapse

RoleNotFound =
Class.new(StandardError)

Instance Method Summary collapse

Instance Method Details

#create_role(name) ⇒ Object



13
14
15
# File 'lib/ez/permissions/api/roles.rb', line 13

def create_role(name)
  Role.create(name: name)
end

#delete_role(name) ⇒ Object



33
34
35
36
37
# File 'lib/ez/permissions/api/roles.rb', line 33

def delete_role(name)
  role = get_role!(name)

  role.delete
end

#get_role(name) ⇒ Object



17
18
19
# File 'lib/ez/permissions/api/roles.rb', line 17

def get_role(name)
  Role.find_by(name: name)
end

#get_role!(name) ⇒ Object



21
22
23
24
25
# File 'lib/ez/permissions/api/roles.rb', line 21

def get_role!(name)
  Role.find_by!(name: name)
rescue ActiveRecord::RecordNotFound
  raise RoleNotFound, "Role #{name} not found"
end

#list_rolesObject



9
10
11
# File 'lib/ez/permissions/api/roles.rb', line 9

def list_roles
  Role.all
end

#update_role(role_name, name:) ⇒ Object



27
28
29
30
31
# File 'lib/ez/permissions/api/roles.rb', line 27

def update_role(role_name, name:)
  role = get_role!(role_name)

  role.update(name: name)
end