Module: Freshly::Default

Defined in:
lib/freshly/default.rb

Constant Summary collapse

USER_AGENT =

Default User Agent header string

"Freshly #{Freshly::VERSION}".freeze
MEDIA_TYPE =

Default media type

"application/json".freeze
RACK_BUILDER_CLASS =

In Faraday 0.9, Faraday::Builder was renamed to Faraday::RackBuilder

defined?(Faraday::RackBuilder) ? Faraday::RackBuilder : Faraday::Builder
MIDDLEWARE =

Default Faraday middleware stack

RACK_BUILDER_CLASS.new do |builder|
  builder.use Freshly::Response::RaiseError
  builder.response :json, :content_type => /\bjson$/
  builder.adapter Faraday.default_adapter
end
PER_PAGE =
100
AUTO_PAGINATE =
false

Class Method Summary collapse

Class Method Details

.api_endpointObject



34
35
36
# File 'lib/freshly/default.rb', line 34

def api_endpoint
  ENV["FRESHLY_API_ENDPOINT"]
end

.api_keyObject



30
31
32
# File 'lib/freshly/default.rb', line 30

def api_key
  ENV["FRESHLY_API_KEY"]
end

.auto_paginateObject



38
39
40
# File 'lib/freshly/default.rb', line 38

def auto_paginate
  AUTO_PAGINATE
end

.connection_optionsObject



42
43
44
45
46
47
48
49
# File 'lib/freshly/default.rb', line 42

def connection_options
  {
    :headers => {
      :accept => media_type,
      :user_agent => user_agent
    }
  }
end

.media_typeObject



51
52
53
# File 'lib/freshly/default.rb', line 51

def media_type
  MEDIA_TYPE
end

.middlewareObject



59
60
61
# File 'lib/freshly/default.rb', line 59

def middleware
  MIDDLEWARE
end

.per_pageObject



63
64
65
# File 'lib/freshly/default.rb', line 63

def per_page
  ENV["PER_PAGE"] || PER_PAGE
end

.user_agentObject



55
56
57
# File 'lib/freshly/default.rb', line 55

def user_agent
  ENV["FRESHLY_USER_AGENT"] || USER_AGENT
end