class Rubytus::API
Public Instance Methods
default_options()
click to toggle source
# File lib/rubytus/api.rb, line 43 def default_options { :base_path => ENV[ENV_BASE_PATH] || DEFAULT_BASE_PATH, :max_size => ENV[ENV_MAX_SIZE] || DEFAULT_MAX_SIZE } end
default_parser(opts, options)
click to toggle source
# File lib/rubytus/api.rb, line 50 def default_parser(opts, options) opts.separator "" opts.separator "TUSD options:" args = [ { :name => :base_path, :short => '-b', :long => '--base-path BASE_PATH', :desc => "Url path used for handling uploads (default: #{options[:base_path]})" }, { :name => :max_size, :short => '-m', :long => '--max-size MAX_SIZE', :desc => "Maximum bytes may be stored inside storage (default: #{options[:max_size]})" } ] args.each do |arg| opts.on(arg[:short], arg[:long], arg[:desc]) do |value| options[arg[:name]] = value end end # save into global options @options = options end
default_setup()
click to toggle source
# File lib/rubytus/api.rb, line 38 def default_setup @options[:max_size] = validates_max_size(@options[:max_size]) @options[:base_path] = validates_base_path(@options[:base_path]) end
on_body(env, data)
click to toggle source
# File lib/rubytus/api.rb, line 21 def on_body(env, data) if env['api.action'] == :patch env['api.buffers'] << data else body = StringIO.new(data) env[RACK_INPUT] = body end end
on_headers(env, headers)
click to toggle source
# File lib/rubytus/api.rb, line 15 def on_headers(env, headers) env['api.options'] = @options env['api.headers'] = COMMON_HEADERS.merge({ 'Date' => Time.now.httpdate }) prepare_headers(env, headers) end
response(env)
click to toggle source
# File lib/rubytus/api.rb, line 30 def response(env) status = STATUS_OK headers = env['api.headers'] body = [] [status, headers, body] end