Class: Gdsapi::Requester

Inherits:
Object
  • Object
show all
Defined in:
lib/gdsapi/requester.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(driver, login: '', password: '', language: 'ru', prefix: '') ⇒ Requester

It is ‘strongly recommended` to use Faraday

Parameters:

  • driver (Faraday::Connection)
    • driver instance, i.e. object that responds to

    #get(url, params, headers), #post(url, body, params), #basic_auth(login, password), and querying and modifying #headers in Hash-style

  • login: (defaults to: '')

    & password: - HTTP basic auth factors

  • language: (defaults to: 'ru')
    • language slug for which request will be performed



20
21
22
23
24
25
26
27
28
# File 'lib/gdsapi/requester.rb', line 20

def initialize(driver, login: '', password: '', language: 'ru', prefix: '')
  @driver = driver
  @login = 
  @password = password
  @language = language
  @prefix = prefix
  set_language
  set_basic_auth
end

Instance Attribute Details

#driverObject (readonly)

Returns the value of attribute driver.



8
9
10
# File 'lib/gdsapi/requester.rb', line 8

def driver
  @driver
end

#languageObject

Returns the value of attribute language.



9
10
11
# File 'lib/gdsapi/requester.rb', line 9

def language
  @language
end

#loginObject (readonly)

Returns the value of attribute login.



6
7
8
# File 'lib/gdsapi/requester.rb', line 6

def 
  @login
end

#passwordObject (readonly)

Returns the value of attribute password.



7
8
9
# File 'lib/gdsapi/requester.rb', line 7

def password
  @password
end

#prefixObject (readonly)

Returns the value of attribute prefix.



10
11
12
# File 'lib/gdsapi/requester.rb', line 10

def prefix
  @prefix
end

Instance Method Details

#get(url, params: {}, headers: {}) ⇒ Object



35
36
37
# File 'lib/gdsapi/requester.rb', line 35

def get(url, params: {}, headers: {})
  driver.get prefix + url, params, headers
end

#post(url, body: {}, headers: {}) ⇒ Object



39
40
41
# File 'lib/gdsapi/requester.rb', line 39

def post(url, body: {}, headers: {})
  driver.post prefix + url, body, headers
end