module Flickrie::OAuth

Constants

NO_CALLBACK
URL

Public Class Methods

get_access_token(verifier, request_token) click to toggle source
# File lib/flickrie/oauth.rb, line 47
def self.get_access_token(verifier, request_token)
  connection = new_connection(request_token)
  response = connection.get "access_token" do |req|
    req.params[:oauth_verifier] = verifier
  end

  AccessToken.new(response.body)
end
get_request_token(options = {}) click to toggle source
# File lib/flickrie/oauth.rb, line 38
def self.get_request_token(options = {})
  connection = new_connection
  response = connection.get "request_token" do |req|
    req.params[:oauth_callback] = options[:callback_url] || NO_CALLBACK
  end

  RequestToken.new(response.body)
end

Private Class Methods

new_connection(request_token = nil) click to toggle source
# File lib/flickrie/oauth.rb, line 10
def self.new_connection(request_token = nil)
  Faraday.new(params) do |b|
    b.use Middleware::Retry
    b.use FaradayMiddleware::OAuth,
      consumer_key: Flickrie.api_key,
      consumer_secret: Flickrie.shared_secret,
      token: request_token.to_a.first,
      token_secret: request_token.to_a.last

    b.use Middleware::ParseOAuthParams
    b.use Middleware::OAuthCheck

    b.adapter :net_http
  end
end
params() click to toggle source
# File lib/flickrie/oauth.rb, line 26
def self.params
  {
    url: URL,
    request: {
      open_timeout: Flickrie.open_timeout || DEFAULTS[:open_timeout],
      timeout: Flickrie.timeout || DEFAULTS[:timeout]
    }
  }
end