class SystemdMon::NotifierLoader

Public Instance Methods

get_class(name) click to toggle source
# File lib/systemd_mon/notifier_loader.rb, line 3
def get_class(name)
  class_name = camel_case(name)
  get_class_const(class_name)
rescue NameError
  require "systemd_mon/notifiers/#{name}"
  get_class_const(class_name)
end

Protected Instance Methods

camel_case(name) click to toggle source
# File lib/systemd_mon/notifier_loader.rb, line 12
def camel_case(name)
  return name if name !~ /_/ && name =~ /[A-Z]+.*/
  name.split('_').map { |e| e.capitalize }.join
end
get_class_const(name) click to toggle source
# File lib/systemd_mon/notifier_loader.rb, line 17
def get_class_const(name)
  Notifiers.const_get(name)
end