class Admin::Image::S3
Attributes
access_key[R]
bucket[R]
errors[R]
path[R]
secret_key[R]
Public Class Methods
new(options={})
click to toggle source
# File lib/ecrire/app/models/admin/image.rb, line 57 def initialize(options={}) @errors = ActiveModel::Errors.new(self) @access_key = options.fetch(:access_key, "") @secret_key = options.fetch(:secret_key, "") @path = options.fetch(:path, "") @bucket = service.bucket(options.fetch(:bucket, 'ecrire')) end
Public Instance Methods
configuration_hash()
click to toggle source
# File lib/ecrire/app/models/admin/image.rb, line 66 def configuration_hash config = { 'access_key' => access_key, 'secret_key' => secret_key, 'bucket' => bucket.name } unless path.blank? config['path'] = path end config end
connect()
click to toggle source
# File lib/ecrire/app/models/admin/image.rb, line 80 def connect begin @bucket.retrieve @connected = true rescue Error::ResponseError, ArgumentError, SocketError => e errors.add :remote, "Couldn't connect to S3." end end
connected?()
click to toggle source
# File lib/ecrire/app/models/admin/image.rb, line 96 def connected? if @connected.nil? connect end !!@connected end
service()
click to toggle source
# File lib/ecrire/app/models/admin/image.rb, line 89 def service @service ||= Service.new(access_key_id: access_key, secret_access_key: secret_key, use_ssl: true ) end