Class: MetricaApi::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/metrica_api/request.rb

Overview

Yandex Metrica request

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options, params = {}) ⇒ Request

Returns a new instance of Request.



11
12
13
14
# File 'lib/metrica_api/request.rb', line 11

def initialize(options, params = {})
  @options = options
  @params = params
end

Class Method Details

.call(options, params = {}) ⇒ Object



7
8
9
# File 'lib/metrica_api/request.rb', line 7

def self.call(options, params = {})
  Request.new(options, params).call
end

Instance Method Details

#callObject



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/metrica_api/request.rb', line 16

def call
  execute!.tap do |response|
    if logger
      logger << full_url
      logger << response
    end
  end
rescue RestClient::Unauthorized, RestClient::Forbidden,
       RestClient::BadRequest, RestClient::ResourceNotFound => e
  raise MetricaApi::RequestError,
        "url: #{full_url}, original: #{e.message}"
rescue SocketError => e
  raise MetricaApi::ConnectionError, e.message
end