Sha256: f70b96434aa67ab0d5c5b4163ee83f7b760eedda204d2452a4c626e10fc44be0
Contents?: true
Size: 1.28 KB
Versions: 4
Compression:
Stored size: 1.28 KB
Contents
require 'time' class MongoMedia attr_accessor :content_type, :body, :last_updated def initialize request=nil, params=nil if (request != nil) if (request_is_multipart_form(params)) populate_from_multipart params elsif(request_is_octet_stream(params)) populate_from_octet_stream(params, request) else populate_from_plain request end @last_updated = Time.now.httpdate end end private def populate_from_octet_stream params, request @content_type = params[:content_type] @body = request.env["rack.input"].read end def populate_from_multipart params file = params[:file] if (file == nil) file = params[:files][0] end content_type_header = file[:head].each_line.select {|e| e.include? 'Content-Type'}[0] @content_type = content_type_header.split(' ')[1] @body = file[:tempfile] end def populate_from_plain request @content_type = request.media_type @body = request.env["rack.input"].read end def request_is_multipart_form params return false if params == nil params[:files] != nil || params[:file] != nil end def request_is_octet_stream params return false if params == nil params[:qqfile] != nil end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
koda-0.0.12 | lib/models/mongo_media.rb |
koda-0.0.11 | lib/models/mongo_media.rb |
koda-0.0.9 | lib/models/mongo_media.rb |
koda-0.0.8 | lib/models/mongo_media.rb |