Sha256: 4db62abe08c6c6dc3f5dbdfcb3a5c600f39f281b596108b5f9fb003b2b9555c6

Contents?: true

Size: 679 Bytes

Versions: 8

Compression:

Stored size: 679 Bytes

Contents

module Flattr
  module Request
    class FlattrOAuth2 < Faraday::Middleware

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

      def initialize(app, options)
        @app, @options = app, options
      end

      def authorization_header
        if @options[:access_token]
          "Bearer #{@options[:access_token]}"
        elsif @options[:client_id] && @options[:client_secret]
          "Basic #{Flattr::Client.base64_encode("#{@options[:client_id]}:#{@options[:client_secret]}")}"
        else
          nil
        end
      end

    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
flattr-0.3.7 lib/flattr/request/oauth2.rb
flattr-0.3.6 lib/flattr/request/oauth2.rb
flattr-0.3.5 lib/flattr/request/oauth2.rb
flattr-0.3.4 lib/flattr/request/oauth2.rb
flattr-0.3.3 lib/flattr/request/oauth2.rb
flattr-0.3.2 lib/flattr/request/oauth2.rb
flattr-0.3.1 lib/flattr/request/oauth2.rb
flattr-0.3.0 lib/flattr/request/oauth2.rb