Sha256: 2ad4f7e0a57dff316a22c1346797a26cdda4cf67cf8662e6fdc0b9c571a8486c
Contents?: true
Size: 670 Bytes
Versions: 1
Compression:
Stored size: 670 Bytes
Contents
# frozen_string_literal: true require 'housecanary/error' require 'housecanary/utils' module Housecanary class ResponseParser #:nodoc: class << self def perform(response) response_body = response.body.empty? ? '' : utils.deep_symbolize_keys(response.parse(:json)) api_error_filter(response.code, response_body) end private def utils Housecanary::Utils end def error(code, body) Housecanary::Error::ERRORS_MAP[code]&.from_response(body) end def api_error_filter(code, body) error = error(code, body) raise(error) if error body end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
housecanary-ruby-0.1.0 | lib/housecanary/response_parser.rb |