Class: EpoOps::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/epo_ops/client.rb

Overview

This is a wrapper for OAuth

Class Method Summary collapse

Class Method Details

.request(verb, url, options = {}) ⇒ OAuth2::Response

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :params (Hash)

    query parameter for the request

  • :body (Hash, String)

    the body of the request

  • :headers (Hash)

    http request headers

Returns:

  • (OAuth2::Response)

Raises:



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/epo_ops/client.rb', line 15

def self.request(verb, url, options = {})
  response = case EpoOps.config.authentication
              when :oauth then do_oauth_request(verb, url, options)
              when :plain then do_plain_request(verb,url,options)
              else raise('Unknown authentication strategy!')
             end
  fail Error.from_response(response) unless response.status == 200
  response
rescue Error::AccessTokenExpired
  EpoOps.config.token_store.reset
  request(verb, url, options)
end