class Shutterbug::Configuration

Attributes

cache_manager[RW]
path_prefix[RW]
phantom_bin_path[RW]
resource_dir[RW]
s3_bin[RW]
s3_key[RW]
s3_secret[RW]
skip_direct_upload[RW]
uri_prefix[RW]

Public Class Methods

instance(opts={}) click to toggle source
# File lib/shutterbug/configuration.rb, line 15
def self.instance(opts={})
  return @instance || @instance = self.new(opts)
end
new(opts={}) click to toggle source
# File lib/shutterbug/configuration.rb, line 19
def initialize(opts={})
  self.uri_prefix       = opts[:uri_prefix]       || ""
  self.path_prefix      = opts[:path_prefix]      || "/shutterbug"
  self.resource_dir     = opts[:resource_dir]     || Dir.tmpdir
  self.phantom_bin_path = opts[:phantom_bin_path] || "phantomjs"
  self.s3_bin           = opts[:s3_bin]
  self.s3_key           = opts[:s3_key]
  self.s3_secret        = opts[:s3_secret]
  self.cache_manager    = opts[:cache_manager]    || Shutterbug::CacheManager::NoCache.new
  self.skip_direct_upload = opts[:skip_direct_upload]
end

Public Instance Methods

base_url(req) click to toggle source
# File lib/shutterbug/configuration.rb, line 39
def base_url(req)
  req.POST()['base_url'] || req.referrer || "#{req.scheme}://#{req.host_with_port}"
end
fs_path_for(filename) click to toggle source
# File lib/shutterbug/configuration.rb, line 31
def fs_path_for(filename)
  File.join(resource_dir, "phantom_#{filename}")
end
storage() click to toggle source
# File lib/shutterbug/configuration.rb, line 43
def storage
  use_s3? ? Storage::S3Storage : Storage::FileStorage
end
url_prefix() click to toggle source
# File lib/shutterbug/configuration.rb, line 35
def url_prefix
  "#{uri_prefix}#{path_prefix}"
end
use_s3?() click to toggle source
# File lib/shutterbug/configuration.rb, line 47
def use_s3?
  return (self.s3_bin && self.s3_key && self.s3_secret)
end