class Object

Public Instance Methods

[](name)
Alias for: get
configurations() click to toggle source
# File lib/api_mailer/configuration.rb, line 8
def configurations
  @configurations ||= load_config
end
filepath() click to toggle source
# File lib/api_mailer/configuration.rb, line 5
def filepath
  @filepath ||= Rails.root.join("config/api_mailer.yml")
end
get(name) click to toggle source
# File lib/api_mailer/configuration.rb, line 30
def get(name)
  configurations[name.to_s]
end
Also aliased as: []
keys() click to toggle source
# File lib/api_mailer/configuration.rb, line 34
def keys
  configurations.keys
end
load_config() click to toggle source
# File lib/api_mailer/configuration.rb, line 12
def load_config
  if File.exist?(filepath)
    ActiveSupport::HashWithIndifferentAccess.new(load_yaml(ERB.new(File.read(filepath)).result)[Rails.env.to_s])
  else
    raise Exception.new("File not found: config/api_mailer.yml")
  end
end
load_yaml(source) click to toggle source
# File lib/api_mailer/configuration.rb, line 20
def load_yaml(source)
  # https://bugs.ruby-lang.org/issues/17866
  # https://github.com/rails/rails/commit/179d0a1f474ada02e0030ac3bd062fc653765dbe
  begin
    YAML.load(source, aliases: true)
  rescue ArgumentError
    YAML.load(source)
  end
end