class Ez::Permissions::API::Authorize::ModelPermissions

Attributes

permissions_map[R]

Public Class Methods

new(permissions_map) click to toggle source
# File lib/ez/permissions/api/authorize/model_permissions.rb, line 10
def initialize(permissions_map)
  @permissions_map = permissions_map
end

Public Instance Methods

authorize!(action_name, resource_name) click to toggle source
# File lib/ez/permissions/api/authorize/model_permissions.rb, line 18
def authorize!(action_name, resource_name)
  permissions_map.fetch(to_key(action_name, resource_name))
rescue KeyError
  raise Ez::Permissions::NotAuthorizedError
end
can?(action_name, resource_name) click to toggle source
# File lib/ez/permissions/api/authorize/model_permissions.rb, line 14
def can?(action_name, resource_name)
  permissions_map[to_key(action_name, resource_name)] == true
end

Private Instance Methods

to_key(action_name, resource_name) click to toggle source
# File lib/ez/permissions/api/authorize/model_permissions.rb, line 26
def to_key(action_name, resource_name)
  "#{action_name}_#{resource_name}".to_sym
end