Class: NanoleafRuby::BaseRequester

Inherits:
Object
  • Object
show all
Includes:
HTTParty
Defined in:
lib/nanoleaf_ruby/base_requester.rb

Instance Method Summary collapse

Constructor Details

#initialize(raise_errors: false) ⇒ BaseRequester

Returns a new instance of BaseRequester.



7
8
9
# File 'lib/nanoleaf_ruby/base_requester.rb', line 7

def initialize(raise_errors: false)
  @raise_errors = raise_errors
end

Instance Method Details

#delete(url:, params: {}) ⇒ Object



29
30
31
# File 'lib/nanoleaf_ruby/base_requester.rb', line 29

def delete(url:, params: {})
  self.class.delete(url, body: params.to_json)
end

#get(url:) ⇒ Object



11
12
13
14
# File 'lib/nanoleaf_ruby/base_requester.rb', line 11

def get(url:)
  response = self.class.get(url)
  parse_response(response: response)
end

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



24
25
26
27
# File 'lib/nanoleaf_ruby/base_requester.rb', line 24

def post(url:, params: {}, headers: {})
  response = self.class.post(url, body: params.to_json, headers: headers)
  parse_response(response: response, params: params)
end

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



16
17
18
19
20
21
22
# File 'lib/nanoleaf_ruby/base_requester.rb', line 16

def put(url:, params: {}, headers: {})
  body = params.to_json
  headers = headers.merge('Content-Type' => 'application/json',
                          'Content-Length' => body.length.to_s)
  response = self.class.put(url, body: body, headers: headers)
  parse_response(response: response, params: params)
end