class Radikocopy::Config

Attributes

import_scpt[R]
keep[R]
local_dir[R]
remote_dir[R]
remote_host[R]

Public Class Methods

new(config) click to toggle source
# File lib/radikocopy.rb, line 8
def initialize(config)
  @config = config
  @remote_host = config_value("remote", "host", false)
  @remote_dir = config_value("remote", "dir", false)
  @local_dir = config_value("local", "dir", true)
  unless FileTest.directory?(@local_dir)
    raise RuntimeError, "local_dir does not exists: #{@local_dir}"
  end
  dir = File.dirname(File.expand_path(__FILE__))
  if FileTest.exist?('/System/Applications/Music.app')
    @import_scpt = File.join(dir, "radikoimport_music.scpt")
  else
    @import_scpt = File.join(dir, "radikoimport_itunes.scpt")
  end
  @keep = 20
end

Public Instance Methods

local_only?() click to toggle source
# File lib/radikocopy.rb, line 35
def local_only?
  @remote_host.nil? || @remote_dir.nil?
end
to_s() click to toggle source
# File lib/radikocopy.rb, line 27
def to_s
  str = ''
  str << "remote_host: #{remote_host}\n"
  str << "remote_dir: #{remote_dir}\n"
  str << "local_dir: #{local_dir}\n"
  str << "import_scpt: #{import_scpt}\n"      
end

Private Instance Methods

config_value(section, key, require) click to toggle source
# File lib/radikocopy.rb, line 40
def config_value(section, key, require)
  value = @config[section][key]
  if require && (value.nil? || value.empty?)
    raise RuntimeError, "#{section}:#{key}: is empty"
  end
  value
end