Method: Acl::Resource::Registry#add

Defined in:
lib/acl.rb

#add(resource, parent = nil) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/acl.rb', line 14

def add(resource, parent=nil)
  if self.has?(resource)
    raise ArgumentError, "#{resource} existiert leider schon"
  end
  unless parent.nil?
    @resources[parent.to_sym][:children].merge!(resource.to_sym => resource)
    parent = self.get(parent)
  end
  @resources.merge!({resource.to_sym => {
        :instance => resource,
        :parent => parent,
        :children => {}
      }})
end