class Paperclip::AdapterRegistry
def for(target)
def for(target) handler_for(target).new(target) end
def handler_for(target)
def handler_for(target) @registered_handlers.each do |tester, handler| return handler if tester.call(target) end raise NoHandlerError.new("No handler found for #{target.inspect}") end
def initialize
def initialize @registered_handlers = [] end
def register(handler_class, &block)
def register(handler_class, &block) @registered_handlers << [block, handler_class] end
def registered?(target)
def registered?(target) @registered_handlers.any? do |tester, handler| handler === target end end