diff --git a/app/models/upload.rb b/app/models/upload.rb index 91aea72e4..d7fd2f7ae 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -2,7 +2,7 @@ require 'digest/sha1' require 'image_sizer' require 'tempfile' require 'pathname' -require_dependency 's3' +require_dependency 's3_store' require_dependency 'local_store' class Upload < ActiveRecord::Base @@ -77,12 +77,12 @@ class Upload < ActiveRecord::Base end def self.store_file(file, sha1, upload_id) - return S3.store_file(file, sha1, upload_id) if SiteSetting.enable_s3_uploads? + return S3Store.store_file(file, sha1, upload_id) if SiteSetting.enable_s3_uploads? return LocalStore.store_file(file, sha1, upload_id) end def self.remove_file(url) - return S3.remove_file(url) if SiteSetting.enable_s3_uploads? + return S3Store.remove_file(url) if SiteSetting.enable_s3_uploads? return LocalStore.remove_file(url) end @@ -99,7 +99,7 @@ class Upload < ActiveRecord::Base end def self.is_on_s3?(url) - SiteSetting.enable_s3_uploads? && url.start_with?(S3.base_url) + SiteSetting.enable_s3_uploads? && url.start_with?(S3Store.base_url) end def self.get_from_url(url) diff --git a/lib/cooked_post_processor.rb b/lib/cooked_post_processor.rb index 211272f0b..ae10848ad 100644 --- a/lib/cooked_post_processor.rb +++ b/lib/cooked_post_processor.rb @@ -223,7 +223,7 @@ class CookedPostProcessor def attachments if SiteSetting.enable_s3_uploads? - @doc.css("a[href^=\"#{S3.base_url}\"]") + @doc.css("a[href^=\"#{S3Store.base_url}\"]") else # local uploads are identified using a relative uri @doc.css("a[href^=\"#{LocalStore.directory}\"]") diff --git a/lib/s3.rb b/lib/s3_store.rb similarity index 77% rename from lib/s3.rb rename to lib/s3_store.rb index 9ae94c85a..753f80459 100644 --- a/lib/s3.rb +++ b/lib/s3_store.rb @@ -1,15 +1,15 @@ -module S3 +module S3Store def self.store_file(file, sha1, upload_id) - S3.check_missing_site_settings + S3Store.check_missing_site_settings - directory = S3.get_or_create_directory(SiteSetting.s3_upload_bucket) + directory = S3Store.get_or_create_directory(SiteSetting.s3_upload_bucket) extension = File.extname(file.original_filename) remote_filename = "#{upload_id}#{sha1}#{extension}" # if this fails, it will throw an exception - file = S3.upload(file, remote_filename, directory) - "#{S3.base_url}/#{remote_filename}" + file = S3Store.upload(file, remote_filename, directory) + "#{S3Store.base_url}/#{remote_filename}" end def self.base_url @@ -17,11 +17,11 @@ module S3 end def self.remove_file(url) - S3.check_missing_site_settings + S3Store.check_missing_site_settings - directory = S3.get_or_create_directory(SiteSetting.s3_upload_bucket) + directory = S3Store.get_or_create_directory(SiteSetting.s3_upload_bucket) - file = S3.destroy(url, directory) + file = S3Store.destroy(url, directory) end def self.check_missing_site_settings @@ -33,7 +33,7 @@ module S3 def self.get_or_create_directory(name) @fog_loaded = require 'fog' unless @fog_loaded - options = S3.generate_options + options = S3Store.generate_options fog = Fog::Storage.new(options) diff --git a/spec/components/s3_spec.rb b/spec/components/s3_store_spec.rb similarity index 85% rename from spec/components/s3_spec.rb rename to spec/components/s3_store_spec.rb index 1005924cb..7fd490e65 100644 --- a/spec/components/s3_spec.rb +++ b/spec/components/s3_store_spec.rb @@ -1,8 +1,8 @@ require 'spec_helper' require 'fog' -require 's3' +require 's3_store' -describe S3 do +describe S3Store do describe "store_file" do @@ -25,7 +25,7 @@ describe S3 do it 'returns the url of the S3 upload if successful' do # NOTE: s3 bucket's name are case sensitive so we can't use it as a subdomain... - S3.store_file(file, "SHA", 1).should == '//s3.amazonaws.com/S3_Upload_Bucket/1SHA.png' + S3Store.store_file(file, "SHA", 1).should == '//s3.amazonaws.com/S3_Upload_Bucket/1SHA.png' end after(:each) do diff --git a/spec/models/upload_spec.rb b/spec/models/upload_spec.rb index 8cce0dc72..34df67d3a 100644 --- a/spec/models/upload_spec.rb +++ b/spec/models/upload_spec.rb @@ -119,12 +119,12 @@ describe Upload do it "store files on s3 when enabled" do SiteSetting.expects(:enable_s3_uploads?).returns(true) LocalStore.expects(:store_file).never - S3.expects(:store_file) + S3Store.expects(:store_file) Upload.store_file(image, image_sha1, 1) end it "store files locally by default" do - S3.expects(:store_file).never + S3Store.expects(:store_file).never LocalStore.expects(:store_file) Upload.store_file(image, image_sha1, 1) end @@ -136,12 +136,12 @@ describe Upload do it "remove files on s3 when enabled" do SiteSetting.expects(:enable_s3_uploads?).returns(true) LocalStore.expects(:remove_file).never - S3.expects(:remove_file) + S3Store.expects(:remove_file) Upload.remove_file(upload.url) end it "remove files locally by default" do - S3.expects(:remove_file).never + S3Store.expects(:remove_file).never LocalStore.expects(:remove_file) Upload.remove_file(upload.url) end