class OpenKit::Request::PostMultipartDelegate
Public Class Methods
new(path, req_params, upload)
click to toggle source
Calls superclass method
OpenKit::Request::BaseDelegate::new
# File lib/openkit/request/post_multipart.rb, line 29 def initialize(path, req_params, upload) super(path) @req_params = req_params @upload = upload end
Public Instance Methods
flat_names(parameters, running = '') { |name, v| ... }
click to toggle source
# File lib/openkit/request/post_multipart.rb, line 51 def flat_names(parameters, running = '', &block) parameters.each do |k,v| name = (running.length == 0) ? k.to_s : running + "[#{k}]" if v.is_a?(Hash) flat_names(v, name, &block) else yield name, v end end end
flatten_params(parameters)
click to toggle source
# File lib/openkit/request/post_multipart.rb, line 43 def flatten_params(parameters) flattened = {} flat_names(parameters, '') do |name,v| flattened[name] = v end flattened end
net_request()
click to toggle source
# File lib/openkit/request/post_multipart.rb, line 35 def net_request up_io = UploadIO.new(@upload.file, "application/octet-stream", "upload") flat_params = flatten_params(@req_params) req = Net::HTTP::Post::Multipart.new(uri.request_uri, flat_params.merge(@upload.param_name => up_io)) req['Accept'] = "application/json" req end