class Paperclip::StringioAdapter
def self.register
def self.register Paperclip.io_adapters.register self do |target| StringIO === target end end
def cache_current_values
def cache_current_values self.original_filename = @target.original_filename if @target.respond_to?(:original_filename) self.original_filename ||= "data" @tempfile = copy_to_tempfile(@target) @content_type = ContentTypeDetector.new(@tempfile.path).detect @size = @target.size end
def copy_to_tempfile(source)
def copy_to_tempfile(source) while data = source.read(16*1024) destination.write(data) end destination.rewind destination end
def initialize(target, options = {})
def initialize(target, options = {}) super cache_current_values end