Class: Lockdown::Permission
- Inherits:
-
Object
- Object
- Lockdown::Permission
- Defined in:
- lib/lockdown/permission.rb
Instance Attribute Summary (collapse)
-
- (Object) name
Name of permission.
-
- (Object) resources
readonly
Array of resource objects that define the access rights for this permission.
Instance Method Summary (collapse)
- - (Object) controllers
-
- (Permission) initialize(name)
constructor
A new instance of Permission.
- - (Object) is_protected
- - (Object) is_public
- - (Boolean) protected?
- - (Boolean) public?
-
- (Object) regex_pattern
String representing all resources defining this permission.
-
- (Object) resource(name, &block)
(also: #controller)
New resource.
Constructor Details
- (Permission) initialize(name)
A new instance of Permission
11 12 13 14 15 16 |
# File 'lib/lockdown/permission.rb', line 11 def initialize(name) @name = name.to_s @resources = [] @ispublic = false @isprotected = false end |
Instance Attribute Details
- (Object) name
Name of permission
6 7 8 |
# File 'lib/lockdown/permission.rb', line 6 def name @name end |
- (Object) resources (readonly)
Array of resource objects that define the access rights for this permission
8 9 10 |
# File 'lib/lockdown/permission.rb', line 8 def resources @resources end |
Instance Method Details
- (Object) controllers
29 30 31 |
# File 'lib/lockdown/permission.rb', line 29 def controllers @resources end |
- (Object) is_protected
42 43 44 45 |
# File 'lib/lockdown/permission.rb', line 42 def is_protected @isprotected = true @ispublic = false end |
- (Object) is_public
33 34 35 36 |
# File 'lib/lockdown/permission.rb', line 33 def is_public @ispublic = true @isprotected = false end |
- (Boolean) protected?
47 48 49 |
# File 'lib/lockdown/permission.rb', line 47 def protected? @isprotected end |
- (Boolean) public?
38 39 40 |
# File 'lib/lockdown/permission.rb', line 38 def public? @ispublic end |
- (Object) regex_pattern
String representing all resources defining this permission
52 53 54 |
# File 'lib/lockdown/permission.rb', line 52 def regex_pattern resources.collect{|r| "(#{r.regex_pattern})"}.join("|") end |
- (Object) resource(name, &block) Also known as: controller
New resource
20 21 22 23 24 25 |
# File 'lib/lockdown/permission.rb', line 20 def resource(name, &block) resource = Lockdown::Resource.new(name) resource.instance_eval(&block) if block_given? @resources << resource resource end |