module ActiveMessenger::Core::ConfigParsable::ClassMethods

Public Instance Methods

load_config!(config_path) click to toggle source
# File lib/active_messenger/core/config_parsable.rb, line 14
def load_config!(config_path)
  self.config ||= parse_config!(config_path)
end

Private Instance Methods

parse_config!(config_path) click to toggle source
# File lib/active_messenger/core/config_parsable.rb, line 20
def parse_config!(config_path)
  unless self.env
    raise ActiveMessenger::ConfigParseError.new("Adapter should be set 'env' to parse config!")
  end

  unless self.adapter
    raise ActiveMessenger::ConfigParseError.new("Adapter should be set 'adapter' to parse config!")
  end

  parsed_config = YAML.load_file(config_path)[self.env.to_s][self.adapter.to_s]

  if parsed_config.nil?
    raise ActiveMessenger::ConfigParseError.new("Config missing. Please check configure format!")
  end
rescue SyntaxError => e
  raise ActiveMessenger::ConfigParseError.new(e.msessage)
end