Sha256: 1cc9c78b380fbf4d65b46bf6e1dee73e558d53959b10b787007cb234612dee02
Contents?: true
Size: 1.15 KB
Versions: 18
Compression:
Stored size: 1.15 KB
Contents
require 'httpimagestore/thumbnail_class' require 'pathname' class Configuration class ThumbnailClassDoesNotExistError < RuntimeError def initialize(name) super "Class '#{name}' does not exist" end end def initialize(&block) @thumbnail_classes = Hash.new do |h, k| raise ThumbnailClassDoesNotExistError, k end @thumbnailer_url = "http://localhost:3100" instance_eval &block end def self.from_file(file) file = Pathname.pwd + file Configuration.new do eval(file.read, nil, file.to_s) end end def thumbnail_class(name, method, width, height, format = 'JPEG', options = {}) @thumbnail_classes[name] = ThumbnailClass.new(name, method, width, height, format, options) end def s3_key(id, secret) @s3_key_id = id @s3_key_secret = secret end def s3_bucket(bucket) @s3_bucket = bucket end def thumbnailer_url(url) @thumbnailer_url = url end def get Struct.new(:thumbnail_classes, :s3_key_id, :s3_key_secret, :s3_bucket, :thumbnailer_url).new(@thumbnail_classes, @s3_key_id, @s3_key_secret, @s3_bucket, @thumbnailer_url) end def put(sinatra) get.each_pair do |key, value| sinatra.set key, value end end end
Version data entries
18 entries across 18 versions & 1 rubygems