Commit 705caede

mo khan <mo@mokhan.ca>
2014-09-21 04:16:47
extract method to load object.
1 parent 5627474
Changed files (1)
app
services
infrastructure
app/services/infrastructure/blob_storage.rb
@@ -7,13 +7,13 @@ class BlobStorage
 
   def upload(key, file)
     Rails.logger.info "uploading to #{bucket_name}/#{key}"
-    object = connection.buckets[bucket_name].objects[key]
+    object = object_for(key)
     object.write(Pathname.new(file), options_for(file))
     object.acl = :public_read
   end
 
   def download(key)
-    object = connection.buckets[bucket_name].objects[key]
+    object = object_for(key)
     File.open("#{Dir.tmpdir}/#{key}", "wb") do |tempfile|
       object.read do |chunk|
         tempfile.write(chunk)
@@ -24,6 +24,10 @@ class BlobStorage
 
   private
 
+  def object_for(key)
+    connection.buckets[bucket_name].objects[key]
+  end
+
   def connection
     @connection ||= AWS::S3.new
   end
@@ -42,5 +46,8 @@ class BlobStorage
   class Fake
     def upload(*args)
     end
+
+    def downlaod(*args)
+    end
   end
 end