Sha256: 97e60dec51bcbe9d95ddd04455603cbe8f21a833d3a5253e9fd0642737753061

Contents?: true

Size: 603 Bytes

Versions: 3

Compression:

Stored size: 603 Bytes

Contents

require 'faraday'
require 'faraday_middleware'

module Faraday
  module Panoptes
    class AccessTokenAuthentication < Faraday::Middleware
      dependency do
        require 'json' unless defined?(::JSON)
      end

      def initialize(app, url:, access_token:)
        super(app)
        @access_token = access_token
      end

      def call(env)
        env[:request_headers]["Authorization"] = authorization_header
        @app.call(env)
      end

      def authorization_header
        "Bearer #{access_token}"
      end

      def access_token
        @access_token
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
faraday-panoptes-0.4.0 lib/faraday/panoptes/access_token_authentication.rb
faraday-panoptes-0.3.0 lib/faraday/panoptes/access_token_authentication.rb
faraday-panoptes-0.2.0 lib/faraday/panoptes/access_token_authentication.rb