class Troo::API::Request
Attributes
query[R]
uri[R]
verb[R]
Public Class Methods
make(verb, uri, query = {})
click to toggle source
@param [Symbol] @param [String] @param [Hash] @return [Response, ErrorResponse]
# File lib/troo/api/request.rb, line 9 def make(verb, uri, query = {}) new(verb, uri, query).make end
new(verb, uri, query = {})
click to toggle source
@param [Symbol] @param [String] @param [Hash] @return [Troo::API::Request]
# File lib/troo/api/request.rb, line 18 def initialize(verb, uri, query = {}) @verb, @uri, @query = verb, uri, query end
Public Instance Methods
make()
click to toggle source
@return [Response, ErrorResponse]
# File lib/troo/api/request.rb, line 23 def make @request ||= request rescue RestClient::Exception => e ErrorResponse.new(body: e.http_body, code: e.http_code) rescue SocketError, Errno::ECONNREFUSED ErrorResponse.new(body: 'Cannot reach Trello.', code: 0) end
Private Instance Methods
request()
click to toggle source
# File lib/troo/api/request.rb, line 35 def request RestClient::Request.execute(headers: Headers.build!(uri), payload: query, timeout: 10, method: verb, url: uri) do |response| Responder.build(body: response.body, code: response.code) end end