Class Authorization::AuthorizationRuleSet
In: lib/declarative_authorization/authorization.rb
Parent: Object

Methods

<<   delete   each   initialize_copy   matching   new  

Included Modules

Enumerable

Public Class methods

[Source]

     # File lib/declarative_authorization/authorization.rb, line 369
369:     def initialize (rules = [])
370:       @rules = rules.clone
371:       reset!
372:     end

Public Instance methods

[Source]

     # File lib/declarative_authorization/authorization.rb, line 390
390:     def << rule
391:       @rules << rule
392:       reset!
393:     end

[Source]

     # File lib/declarative_authorization/authorization.rb, line 386
386:     def delete rule
387:       @rules.delete rule
388:       reset!
389:     end

[Source]

     # File lib/declarative_authorization/authorization.rb, line 394
394:     def each &block
395:       @rules.each &block
396:     end

[Source]

     # File lib/declarative_authorization/authorization.rb, line 374
374:     def initialize_copy (source)
375:       @rules = @rules.collect {|rule| rule.clone}
376:       reset!
377:     end

[Source]

     # File lib/declarative_authorization/authorization.rb, line 379
379:     def matching(roles, privileges, context)
380:       roles = [roles] unless roles.is_a?(Array)
381:       rules = cached_auth_rules[context] || []
382:       rules.select do |rule|
383:         rule.matches? roles, privileges, context
384:       end
385:     end

[Validate]