class Object

Constants

HOME
OUT_DIR
PATTERN

Public Instance Methods

collect_images(configs) click to toggle source
# File lib/imagelib/copy2lib.rb, line 52
def collect_images(configs)
  images = []
  configs.each do |config|
    path = config['path'].strip
    files = Dir.glob("#{path}/#{PATTERN}")
    files.each do |file|
      images << Copy.new(file, config['prefix'])
    end
  end
  return images
end
copy_images(images) click to toggle source
# File lib/imagelib/copy2lib.rb, line 65
def copy_images(images)
  progress = ProgressBar.new("copy #{images.length} files", images.size)
  copied_images = Array.new
  images.each do | copy |
    copy.prepare
    res = copy.copy
    if res
      copied_images << res
    end
    progress.inc
  end
  progress.finish
  return copied_images
end
copy_to_lib(args) click to toggle source
# File lib/imagelib/copy2lib.rb, line 102
def copy_to_lib(args)
  configs = process_commandline(args)
  images = collect_images(configs)
  images = images.sort{ |a,b| a.filename <=> b.filename }
  images = images.select{ |copy| copy.work_to_do? }
  copied_images = copy_images(images)
  report_result(copied_images)
end
process_commandline(args) click to toggle source
# File lib/imagelib/copy2lib.rb, line 80
def process_commandline(args)
  configs = []
  if (args.size == 0) then
    configs = YAML::load_file("#{HOME}/.imagelib")
  else
    i = 0
    while i < args.size
      path = args[i]
      prefix = args[i+1]
      configs << {'path' => path, 'prefix' => prefix}
      i = i + 2
    end
  end
end
report_result(copied_images) click to toggle source
# File lib/imagelib/copy2lib.rb, line 95
def report_result(copied_images)
  puts "copied images: #{copied_images.size}"
  copied_images.sort.each do | i |
    puts "copied #{i}"
  end
end