module Fogged
Constants
- VERSION
Public Class Methods
configure() { |self| ... }
click to toggle source
# File lib/fogged.rb, line 42 def self.configure yield self if block_given? check_config self.zencoder_enabled = defined?(Zencoder) self.minimagick_enabled = defined?(MiniMagick) self.active_job_enabled = (Rails.application.config.active_job.queue_adapter != :inline) end
directory_public_url(directory_name)
click to toggle source
# File lib/fogged/utils.rb, line 2 def self.directory_public_url(directory_name) case Fogged.provider when :aws Fogged.storage.request_url(:bucket_name => directory_name) else fail(ArgumentError, "Provider #{Fogged.provider} is not available!") end end
file_exists?(key)
click to toggle source
# File lib/fogged/utils.rb, line 23 def self.file_exists?(key) Fogged.resources.files.head(key) end
file_public_url(key, directory = Fogged.resources.key)
click to toggle source
# File lib/fogged/utils.rb, line 15 def self.file_public_url(key, directory = Fogged.resources.key) Fogged.storage.try( :request_url, :bucket_name => directory, :object_name => key ) end
resources()
click to toggle source
# File lib/fogged.rb, line 50 def self.resources return Fogged._resources if Fogged._resources case Fogged.provider when :aws Fogged._resources = aws_resources else fail(ArgumentError, "Provider #{Fogged.provider} is not available!") end end
resources_public_url()
click to toggle source
# File lib/fogged/utils.rb, line 11 def self.resources_public_url directory_public_url(Fogged.resources.key) end
test_mode!()
click to toggle source
# File lib/fogged.rb, line 61 def self.test_mode! Fogged.test_enabled = true Fogged._resources = test_resources end
with_directory(directory_name) { || ... }
click to toggle source
# File lib/fogged/with_directory.rb, line 2 def self.with_directory(directory_name) old_resources = Fogged._resources Fogged._resources = Fogged.storage.directories.get(directory_name) yield ensure Fogged._resources = old_resources end
zencoder_additional_outputs(&block)
click to toggle source
# File lib/fogged/zencoder_additional_outputs.rb, line 4 def self.zencoder_additional_outputs(&block) Fogged.zencoder_additional_outputs_block = block end
Private Class Methods
aws_resources()
click to toggle source
# File lib/fogged.rb, line 81 def self.aws_resources storage_options = { :provider => "AWS", :aws_access_key_id => Fogged.aws_key, :aws_secret_access_key => Fogged.aws_secret } storage_options.merge!(:region => Fogged.aws_region) if Fogged.aws_region Fogged.storage = Fog::Storage.new(storage_options) Fogged.storage.directories.get(Fogged.aws_bucket) end
check_config()
click to toggle source
# File lib/fogged.rb, line 93 def self.check_config case Fogged.provider when :aws fail(ArgumentError, "AWS key is mandatory") unless Fogged.aws_key fail(ArgumentError, "AWS secret is mandatory") unless Fogged.aws_secret fail(ArgumentError, "AWS bucket is mandatory") unless Fogged.aws_bucket else fail(ArgumentError, "Provider #{Fogged.provider} is not available!") end end
test_resources()
click to toggle source
# File lib/fogged.rb, line 68 def self.test_resources Fog.mock! Fogged.storage = Fog::Storage.new( :provider => "AWS", :aws_access_key_id => "XXX", :aws_secret_access_key => "XXX" ) Fogged.aws_key = "XXX" Fogged.aws_secret = "XXX" Fogged.aws_bucket = "test" Fogged.storage.directories.create(:key => "test") end