Module: Isono::ResourceManifest::MonitorHelper::ClassMethods

Defined in:
lib/isono/resource_manifest.rb

Instance Method Summary collapse

Instance Method Details

#monitor(monitor_class, &blk) ⇒ Object

Raises:

  • (ArgumentError)


251
252
253
254
255
256
257
258
259
260
# File 'lib/isono/resource_manifest.rb', line 251

def monitor(monitor_class, &blk)
  raise ArgumentError unless monitor_class.is_a?(Class) && monitor_class < Isono::Monitors::Base
  @manifest.config.monitors ||= {}
  
  raise "duplicate registration: #{monitor_class}" if @manifest.config.monitors.has_key?(monitor_class)
  
  m = monitor_class.new()
  m.instance_eval &blk if blk
  @manifest.config.monitors[monitor_class] = m
end

#state_monitor(monitor_class, &blk) ⇒ Object



247
248
249
# File 'lib/isono/resource_manifest.rb', line 247

def state_monitor(monitor_class, &blk)
  @manifest.config.state_monitor = self.monitor(monitor_class, &blk)
end