class Aebus::Config::Config

Constants

DEFAULT_STRING

Attributes

defaults[R]
volumes[R]

Public Class Methods

new(filename, current_time_utc) click to toggle source
# File lib/config/config.rb, line 15
def initialize(filename, current_time_utc)

  yaml_root = YAML::load(File.open(filename))
  raise 'Cannot find configuration file' unless yaml_root

  @defaults = yaml_root.delete(DEFAULT_STRING)
  default_backups =  BackupSchedule.parse_backups_config(current_time_utc, @defaults['backups'])

  @volumes = Hash.new
  yaml_root.each_pair do |k, v|
    @volumes[k] = Volume.new(current_time_utc, k, v, default_backups)
  end

end

Public Instance Methods

get_value_for_volume(volume_id, key) click to toggle source
# File lib/config/config.rb, line 41
def get_value_for_volume(volume_id, key)
  result = nil
  if @volumes.include? volume_id
    if @volumes[volume_id].config.include? key
      result = @volumes[volume_id].config[key]
    else
      result = @defaults[key]
    end
  end
  result
end
volume_ids() click to toggle source
# File lib/config/config.rb, line 30
def volume_ids

  result = Array.new
  @volumes.each_key do |k|
    result << k
  end

  result

end