module Desk::Connection
@private
Private Instance Methods
connection(raw=false)
click to toggle source
# File lib/desk/connection.rb, line 12 def connection(raw=false) options = { :headers => {'Accept' => "application/#{format}", 'User-Agent' => user_agent}, :proxy => proxy, :ssl => {:version => 'TLSv1_1'}, :url => api_endpoint, :request => {}, } options[:request][:timeout] = timeout if timeout Faraday.new(options) do |builder| builder.use Faraday::Request::MultipartWithFile if authenticated? if auth_method == Desk::Authentication::Methods::BASIC builder.use Faraday::Request::BasicAuthentication,basic_auth_username, basic_auth_password else builder.use Faraday::Request::OAuth, authentication end end builder.use Faraday::Request::Multipart builder.use Faraday::Request::UrlEncoded builder.use Faraday::Response::RaiseHttp4xx builder.use FaradayMiddleware::Deashify unless raw unless raw case format.to_s.downcase when 'json' builder.use Faraday::Response::ParseJson when 'xml' builder.use Faraday::Response::ParseXml end end builder.use Faraday::Response::RaiseHttp5xx builder.adapter(adapter) builder.response :logger, logger, :bodies => true unless logger.nil? end end