class Umwelt::Abstract::Request

Constants

BASE_URL
HEADERS

BASE_URL = 'localhost:2300/api'

Public Instance Methods

check(request) click to toggle source
# File lib/umwelt/abstract/request.rb, line 24
def check(request)
  if request.parsed_response.key?('errors')
    error! request.parsed_response['errors']
  else
    request
  end
end
get(host: BASE_URL, path: '', params: {}) click to toggle source
# File lib/umwelt/abstract/request.rb, line 16
def get(host: BASE_URL, path: '', params: {})
  check HTTParty.get(
    [host, path].join('/'), options(params)
  )
rescue StandardError => e
  error! [self.class.name, e.message, path]
end
options(params) click to toggle source
# File lib/umwelt/abstract/request.rb, line 47
def options(params)
  { headers: HEADERS, format: :json }.merge(params)
end
parse(request) click to toggle source
# File lib/umwelt/abstract/request.rb, line 32
def parse(request)
  request
    .parsed_response
    .transform_keys(&:to_sym)
end
struct(data, mapper) click to toggle source
# File lib/umwelt/abstract/request.rb, line 38
def struct(data, mapper)
  result = mapper.call(data)
  if result.success?
    result.struct
  else
    error! result.errors
  end
end