Class: MkAcl::Action

Inherits:
Object
  • Object
show all
Defined in:
lib/mikras_utils/mkacl/spec.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(table, name) ⇒ Action

Returns a new instance of Action.



152
153
154
155
156
157
# File 'lib/mikras_utils/mkacl/spec.rb', line 152

def initialize(table, name)
  @table = table
  @name = name.to_s
  @rules = []
  @table.send :attach_action, self
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



149
150
151
# File 'lib/mikras_utils/mkacl/spec.rb', line 149

def name
  @name
end

#rulesObject (readonly)

Returns the value of attribute rules.



150
151
152
# File 'lib/mikras_utils/mkacl/spec.rb', line 150

def rules
  @rules
end

#tableObject (readonly)

Returns the value of attribute table.



148
149
150
# File 'lib/mikras_utils/mkacl/spec.rb', line 148

def table
  @table
end

Instance Method Details

#copy(name) ⇒ Object



159
160
161
162
163
# File 'lib/mikras_utils/mkacl/spec.rb', line 159

def copy(name)
  cp = Action.new(self.table, name)
  cp.rules.concat self.rules
  cp
end

#dump(header = name) ⇒ Object



178
179
180
181
# File 'lib/mikras_utils/mkacl/spec.rb', line 178

def dump(header = name)
  puts "#{header || name}:"
  indent { dump_body }
end

#dump_bodyObject



167
168
169
170
171
172
173
174
175
176
# File 'lib/mikras_utils/mkacl/spec.rb', line 167

def dump_body
  if rules.size == 1
    rules.first.dump
  elsif rules.size > 1
    for rule in rules.sort_by(&:ordinal)
      print "- "
      indent(bol: false) { rule.dump }
    end
  end
end

#to_sObject



165
# File 'lib/mikras_utils/mkacl/spec.rb', line 165

def to_s() name end