Module: Cropio::Connection::Proxiable

Included in:
Proxy
Defined in:
lib/cropio/connection/proxiable.rb

Overview

Contains logic of proxing calls to HTTPS requests.

Constant Summary collapse

V3A_RESOURCES =
%w[weather_history_items growth_scales].freeze

Instance Method Summary collapse

Instance Method Details

#delete(resource) ⇒ Object

Accepts resources name and params to perform HTTPS DELETE request.



29
30
31
# File 'lib/cropio/connection/proxiable.rb', line 29

def delete(resource)
  proxy(method: :delete, url: url_for(resource))
end

#get(resource, query = {}) ⇒ Object

Accepts resources name and params to perform HTTPS GET request.



10
11
12
13
14
15
16
# File 'lib/cropio/connection/proxiable.rb', line 10

def get(resource, query = {})
  rmethod = extract_resource_method!(query)
  id = extract_record_id!(query)

  proxy(method: :get, url: url_for(resource, rmethod, id),
                      headers: { params: query })
end

#patch(resource, data) ⇒ Object

Accepts resources name and params to perform HTTPS PATCH request.



24
25
26
# File 'lib/cropio/connection/proxiable.rb', line 24

def patch(resource, data)
  proxy(method: :patch, url: url_for(resource), data: data)
end

#post(resource, data) ⇒ Object

Accepts resources name and params to perform HTTPS POST request.



19
20
21
# File 'lib/cropio/connection/proxiable.rb', line 19

def post(resource, data)
  proxy(method: :post, url: url_for(resource), data: data)
end