Sha256: e96e4f7d9968061e57d8152539466fdfd75f873f2cd815d764c4c39bc2fcced0

Contents?: true

Size: 1.07 KB

Versions: 2

Compression:

Stored size: 1.07 KB

Contents

require 'faraday'
require 'footrest/http_error'
require 'footrest/pagination'
require 'footrest/follow_redirects'
require 'footrest/parse_json'

module Footrest
  module Connection

    attr_reader :connection

    def set_connection(config)
      @connection = Faraday.new(url: config[:prefix]) do |faraday|
        faraday.request                     :multipart
        faraday.request                     :url_encoded
        faraday.response                    :logger if config[:logging]
        faraday.adapter                     Faraday.default_adapter
        faraday.use                         Footrest::FollowRedirects
        faraday.use                         Footrest::ParseJson, :content_type => /\bjson$/
        faraday.use                         Footrest::RaiseFootrestErrors
        faraday.use                         Footrest::Pagination
        faraday.headers[:accept]          = "application/json"
        faraday.headers[:authorization]   = "Bearer #{config[:token]}" if config[:token]
        faraday.headers[:user_agent]      = "Footrest"
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
footrest-0.3.1 lib/footrest/connection.rb
footrest-0.3.0 lib/footrest/connection.rb