Sha256: f0a4391f8211b277f430ec498121239d0c402541891ae67840a9944f934eed9c

Contents?: true

Size: 1.15 KB

Versions: 168

Compression:

Stored size: 1.15 KB

Contents

# frozen_string_literal: true

module Twilio
  class Request
    attr_reader :host, :port, :method, :url, :params, :data, :headers, :auth, :timeout

    def initialize(host, port, method, url, params = {}, data = {}, headers = {}, auth = nil, timeout = nil)
      @host = host
      @port = port
      @url = url
      @method = method
      @params = params
      @data = data
      @headers = headers
      @auth = auth
      @timeout = timeout
    end

    def to_s
      auth = @auth.nil? ? '' : '(' + @auth.join(',') + ')'

      params = ''
      unless @params.nil? || @params.empty?
        params = '?' + @params.each.map { |key, value| "#{CGI.escape(key)}=#{CGI.escape(value)}" }.join('&')
      end

      headers = ''
      unless @headers.nil? || @headers.empty?
        headers = "\n" + @headers.each.map { |key, value| "-H \"#{key}\": \"#{value}\"" }.join("\n")
      end

      data = ''
      unless @data.nil? || @data.empty?
        data = @method.equal?('GET') ? "\n -G" : "\n"
        data += @data.each.map { |key, value| "-d \"#{key}\"=\"#{value}\"" }.join("\n")
      end

      "#{auth} #{@method} #{@url}#{params}#{data}#{headers}"
    end
  end
end

Version data entries

168 entries across 168 versions & 2 rubygems

Version Path
twilio-ruby-6.12.1 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.12.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.11.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.9.1 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.9.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.8.3 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.8.2 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.8.1 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.8.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.7.1 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.7.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.6.0 lib/twilio-ruby/framework/request.rb
whoosh-ruby-0.1.5 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.5.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.4.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.3.1 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.3.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.2.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.1.0 lib/twilio-ruby/framework/request.rb
twilio-ruby-6.0.2 lib/twilio-ruby/framework/request.rb