Class: Permify::PermissionMap

Inherits:
Object
  • Object
show all
Defined in:
lib/permify/permission_map.rb

Overview

Provides a convenient way to store and retrieve permission data

Instance Method Summary collapse

Constructor Details

#initializePermissionMap

Returns a new instance of PermissionMap.



3
4
5
# File 'lib/permify/permission_map.rb', line 3

def initialize
  @data = {}
end

Instance Method Details

#find(resource, action) ⇒ Object



13
14
15
16
# File 'lib/permify/permission_map.rb', line 13

def find(resource, action)
  resource_key, action_key = to_keys(resource, action)
  data.fetch(resource_key, {})[action_key]
end

#store(resource, action, info) ⇒ Object



7
8
9
10
11
# File 'lib/permify/permission_map.rb', line 7

def store(resource, action, info)
  resource_key, action_key = to_keys(resource, action)
  data[resource_key] ||= {}
  data[resource_key][action_key] = info
end