module Twumper::Config

Attributes

bearer[RW]
consumer_key[RW]
consumer_secret[RW]
headers[RW]

Public Instance Methods

build_bearer_request() click to toggle source
# File lib/twumper/config.rb, line 22
def build_bearer_request
  credentials = set_credentials
  url = "https://api.twitter.com/oauth2/token"
  body = "grant_type=client_credentials"
  headers = set_headers(credentials)
  request_bearer(url, body, headers)
end
config() { |self| ... } click to toggle source
# File lib/twumper/config.rb, line 6
def config 
 yield self
end
get_bearer() click to toggle source
# File lib/twumper/config.rb, line 18
def get_bearer
  self.bearer = build_bearer_request
end
request_bearer(url, body, headers) click to toggle source
# File lib/twumper/config.rb, line 42
def request_bearer(url, body, headers)
  resp = connection.post(url, body: body, headers: headers)
  bearer_token = resp['access_token']
end
reset() click to toggle source
# File lib/twumper/config.rb, line 10
def reset 
  self.headers = nil
  self.consumer_key = nil
  self.consumer_secret = nil
  self.bearer = nil
  self
end
set_credentials() click to toggle source
# File lib/twumper/config.rb, line 30
def set_credentials
  credentials = Base64.encode64("#{self.consumer_key}:#{self.consumer_secret}").gsub("\n", '')
end
set_headers(credentials=nil) click to toggle source
# File lib/twumper/config.rb, line 34
def set_headers(credentials=nil)
  if self.bearer.nil? && credentials
    self.headers = { "Authorization" => "Basic #{credentials}" }
  else
    self.headers = { "Authorization" => "Bearer #{self.bearer}" }
  end
end