Class: Ddr::Auth::Group

Inherits:
SimpleDelegator
  • Object
show all
Extended by:
Deprecation
Defined in:
lib/ddr/auth/group.rb

Overview

Wraps a String

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id, opts = {}, &rule) ⇒ Group

Returns a new instance of Group.



11
12
13
14
15
16
# File 'lib/ddr/auth/group.rb', line 11

def initialize(id, opts={}, &rule)
  super(id)
  @label = opts[:label]
  @rule = rule
  freeze
end

Instance Attribute Details

#ruleObject (readonly)

Returns the value of attribute rule.



9
10
11
# File 'lib/ddr/auth/group.rb', line 9

def rule
  @rule
end

Instance Method Details

#agentObject



31
32
33
# File 'lib/ddr/auth/group.rb', line 31

def agent
  to_s
end

#has_member?(auth_context) ⇒ Boolean

Parameters:

Returns:

  • (Boolean)


19
20
21
# File 'lib/ddr/auth/group.rb', line 19

def has_member?(auth_context)
  rule ? instance_exec(auth_context, &rule) : auth_context.member_of?(self)
end

#idObject



23
24
25
# File 'lib/ddr/auth/group.rb', line 23

def id
  __getobj__
end

#inspectObject



40
41
42
# File 'lib/ddr/auth/group.rb', line 40

def inspect
  "#<#{self.class.name} id=#{id.inspect}, label=#{label.inspect}>"
end

#labelObject



27
28
29
# File 'lib/ddr/auth/group.rb', line 27

def label
  @label || id
end

#to_agentObject



35
36
37
38
# File 'lib/ddr/auth/group.rb', line 35

def to_agent
  Deprecation.warn(self.class, "`to_agent` is deprecated. Use `agent` instead.")
  agent
end