class TBird::Transmitter

Public Class Methods

new() click to toggle source
# File lib/t_bird/transmitter.rb, line 7
def initialize
  @s3 = AWS::S3.new(access_key_id: Configuration.aws_key, secret_access_key: Configuration.aws_secret)
end

Public Instance Methods

transmit!(name, file, options = {}) click to toggle source
# File lib/t_bird/transmitter.rb, line 11
def transmit!(name, file, options = {})
  s3object = s3bucket.objects[name]
  s3object.write(file, default_options.merge(options))
  s3object.public_url(secure: true)
end

Private Instance Methods

default_options() click to toggle source
# File lib/t_bird/transmitter.rb, line 23
def default_options
  { 
    acl: :public_read,
    content_type: 'binary/octet-stream',
    metadata: {}
  }
end
s3bucket() click to toggle source
# File lib/t_bird/transmitter.rb, line 19
def s3bucket
  @s3bucket ||= @s3.buckets[Configuration.aws_bucket]
end