class FlatironS3Uploader::FileUploader

Attributes

client[R]

Public Class Methods

new(client) click to toggle source
# File lib/flatiron_s3_uploader/file_uploader.rb, line 7
def initialize(client)
  @client = client
end

Public Instance Methods

upload(bucket, image, mime_type, directory = nil) click to toggle source
# File lib/flatiron_s3_uploader/file_uploader.rb, line 11
def upload(bucket, image, mime_type, directory = nil)
  key = create_key(image, directory)
  client.put_object(bucket: bucket, key: key, acl: 'public-read', body: image, content_type: mime_type)
  "https://#{bucket}.s3.amazonaws.com/#{key}"
end

Private Instance Methods

create_key(image, directory) click to toggle source
# File lib/flatiron_s3_uploader/file_uploader.rb, line 19
def create_key(image, directory)
  filename = File.basename(image).sub('-resized', '')
  directory ? "#{directory}/#{filename}" : filename
end