Class: NonGrata::Role
- Inherits:
-
Object
- Object
- NonGrata::Role
- Defined in:
- lib/non_grata/role.rb
Instance Attribute Summary collapse
-
#name ⇒ Object
Returns the value of attribute name.
Class Method Summary collapse
Instance Method Summary collapse
- #can?(action, resource) ⇒ Boolean
- #config(&block) ⇒ Object
-
#initialize(name) ⇒ Role
constructor
initialize params: - name: role name.
- #privilege(action, resource) ⇒ Object
- #privileges ⇒ Object
Constructor Details
#initialize(name) ⇒ Role
initialize params:
- name: role name
7 8 |
# File 'lib/non_grata/role.rb', line 7 def initialize(name) @name = name end |
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
3 4 5 |
# File 'lib/non_grata/role.rb', line 3 def name @name end |
Class Method Details
Instance Method Details
#can?(action, resource) ⇒ Boolean
26 27 28 29 |
# File 'lib/non_grata/role.rb', line 26 def can?(action, resource) priv = privileges.find{|i| i.applies_to?(resource) && i.action == action} return priv.nil? ? false : true end |
#config(&block) ⇒ Object
18 19 20 |
# File 'lib/non_grata/role.rb', line 18 def config(&block) instance_eval(&block) if block_given? end |
#privilege(action, resource) ⇒ Object
14 15 16 |
# File 'lib/non_grata/role.rb', line 14 def privilege(action, resource) privileges << Privilege.new(action, resource) end |
#privileges ⇒ Object
10 11 12 |
# File 'lib/non_grata/role.rb', line 10 def privileges @privileges ||= [] end |