Parent

Included Modules

Class Index [+]

Quicksearch

Upload

Public Class Methods

new(options = {}) click to toggle source
    # File lib/mongrel_upload_progress/init.rb, line 7
 7:   def initialize(options = {})
 8:     @path_info      = Array(options[:path_info])
 9:     @frequency      = options[:frequency] || 3
10:     @request_notify = true
11:     if options[:drb]
12:       require 'drb'
13:       DRb.start_service
14:       Mongrel.const_set :Uploads, DRbObject.new(nil, options[:drb])
15:     else
16:       Mongrel.const_set :Uploads, Mongrel::UploadProgress.new
17:     end
18:     Mongrel::Uploads.debug = true if options[:debug]
19:   end

Public Instance Methods

process(request, response) click to toggle source
    # File lib/mongrel_upload_progress/init.rb, line 29
29:   def process(request, response)
30:     upload_notify(:finish, request.params)
31:   end
request_begins(params) click to toggle source
    # File lib/mongrel_upload_progress/init.rb, line 21
21:   def request_begins(params)
22:     upload_notify(:add, params, params[Mongrel::Const::CONTENT_LENGTH].to_i)
23:   end
request_progress(params, clen, total) click to toggle source
    # File lib/mongrel_upload_progress/init.rb, line 25
25:   def request_progress(params, clen, total)
26:     upload_notify(:mark, params, clen)
27:   end

Private Instance Methods

upload_notify(action, params, *args) click to toggle source
    # File lib/mongrel_upload_progress/init.rb, line 34
34:     def upload_notify(action, params, *args)
35:       return unless @path_info.include?(params['PATH_INFO']) &&
36:         params[Mongrel::Const::REQUEST_METHOD] == 'POST' &&
37:         upload_id = Mongrel::HttpRequest.query_parse(params['QUERY_STRING'])['upload_id']
38:       if action == :mark
39:         last_checked_time = Mongrel::Uploads.last_checked(upload_id)
40:         return unless last_checked_time && Time.now - last_checked_time > @frequency
41:       end
42:       Mongrel::Uploads.send(action, upload_id, *args) 
43:       Mongrel::Uploads.update_checked_time(upload_id) unless action == :finish
44:     end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.