Sha256: 9090d2aa46e8fc0768cbb7e2d08c2a98c707545ab7418221c0a7709eff610b22

Contents?: true

Size: 865 Bytes

Versions: 2

Compression:

Stored size: 865 Bytes

Contents

require 'attune/param_flattener'
require "attune/call_dropping"
require "attune/json_logger"

module Attune
  # Default options
  module Default
    extend Configurable

    ENDPOINT = "http://localhost/".freeze

    MIDDLEWARE = Faraday::Builder.new do |builder|
      # Needed for encoding of BATCH GET requests
      builder.use Attune::ParamFlattener

      # Log all requests
      builder.use Attune::CallDropping

      # Allow one retry per request
      builder.request :retry, 1

      # Log all requests
      builder.use Attune::JsonLogger

      # Raise exceptions for HTTP 4xx/5xx
      builder.response :raise_error
      builder.adapter Faraday.default_adapter
    end

    configure do |c|
      c.endpoint = ENDPOINT
      c.middleware = MIDDLEWARE
      c.disabled = false
      c.exception_handler = :raise
      c.timeout = 1
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
attune-0.0.3 lib/attune/default.rb
attune-0.0.2 lib/attune/default.rb