Class: HTTParty::Request::Body
- Inherits:
-
Object
- Object
- HTTParty::Request::Body
- Defined in:
- lib/httparty/request/body.rb
Instance Method Summary collapse
- #boundary ⇒ Object
- #call ⇒ Object
-
#initialize(params, query_string_normalizer: nil, force_multipart: false) ⇒ Body
constructor
A new instance of Body.
- #multipart? ⇒ Boolean
- #prepared_parts ⇒ Object
- #streaming? ⇒ Boolean
- #to_stream ⇒ Object
Constructor Details
#initialize(params, query_string_normalizer: nil, force_multipart: false) ⇒ Body
Returns a new instance of Body.
12 13 14 15 16 |
# File 'lib/httparty/request/body.rb', line 12 def initialize(params, query_string_normalizer: nil, force_multipart: false) @params = params @query_string_normalizer = query_string_normalizer @force_multipart = force_multipart end |
Instance Method Details
#boundary ⇒ Object
26 27 28 |
# File 'lib/httparty/request/body.rb', line 26 def boundary @boundary ||= MultipartBoundary.generate end |
#call ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/httparty/request/body.rb', line 18 def call if params.respond_to?(:to_hash) multipart? ? generate_multipart : normalize_query(params) else params end end |
#multipart? ⇒ Boolean
30 31 32 |
# File 'lib/httparty/request/body.rb', line 30 def multipart? params.respond_to?(:to_hash) && (force_multipart || has_file?(params)) end |
#prepared_parts ⇒ Object
43 44 45 46 47 48 |
# File 'lib/httparty/request/body.rb', line 43 def prepared_parts normalized_params = params.flat_map { |key, value| HashConversions.normalize_keys(key, value) } normalized_params.map do |key, value| [key, value, file?(value)] end end |
#streaming? ⇒ Boolean
34 35 36 |
# File 'lib/httparty/request/body.rb', line 34 def streaming? multipart? && has_file?(params) end |
#to_stream ⇒ Object
38 39 40 41 |
# File 'lib/httparty/request/body.rb', line 38 def to_stream return nil unless streaming? StreamingMultipartBody.new(prepared_parts, boundary) end |