class YumS3Sync::S3Downloader

Public Class Methods

new(bucket, prefix) click to toggle source
# File lib/yum_s3_sync/s3_downloader.rb, line 5
def initialize(bucket, prefix)
  @bucket = bucket
  @prefix = prefix
end

Public Instance Methods

download(relative_url) click to toggle source
# File lib/yum_s3_sync/s3_downloader.rb, line 10
def download(relative_url)
  target = "#{@prefix}/#{relative_url}"
  target.gsub!(/\/+/, '/')

  puts "Downloading #{@bucket}::#{target}"

  s3 = AWS::S3.new
  file = s3.buckets[@bucket].objects[target]

  begin
    return StringIO.new(file.read)
  rescue AWS::S3::Errors::NoSuchKey
  end

  nil
end