class Cws3chk::S3

Public Instance Methods

file_exists?() click to toggle source

TODO put 1.kilobyte in config

# File lib/cws3chk/s3.rb, line 7
def file_exists?
  headers.present? && headers['content-length'].to_i > 1.kilobyte
end
headers() click to toggle source
# File lib/cws3chk/s3.rb, line 11
def headers
  @headers ||= s3_key_headers
end

Private Instance Methods

bucket() click to toggle source
# File lib/cws3chk/s3.rb, line 32
def bucket
  if defined?(S3::Helper) == 'constant' && S3::Helper.class == Class  
    @bucket ||= S3::Helper.current_bucket
  else
    #TODO config
  end
end
s3_key() click to toggle source
# File lib/cws3chk/s3.rb, line 28
def s3_key
  Aws::S3::Key.create bucket, s3_key_path
end
s3_key_headers() click to toggle source
# File lib/cws3chk/s3.rb, line 17
def s3_key_headers
  s3_key.tap do |key|
    begin
      retryable{ key.head }
      print '.'
    rescue => e
      Rails.logger.warn "Cws3chk::S3 #{e.message}"
    end
  end.headers # Headers is blank if the head request has failed.
end
s3_key_path() click to toggle source
# File lib/cws3chk/s3.rb, line 40
def s3_key_path
  @s3_key_path ||= (version ? uploader.public_send(version) : uploader).path
end