module RestClient::Payload
def generate(params)
def generate(params) if params.is_a?(String) Base.new(params) elsif params if params.delete(:multipart) == true || has_file?(params) Multipart.new(params) else UrlEncoded.new(params) end else nil end end
def has_file?(params)
def has_file?(params) params.any? do |_, v| case v when Hash has_file?(v) else v.respond_to?(:path) && v.respond_to?(:read) end end end