Sha256: 1e144db78eeb555857e4dca1b047e2e957a57733c939f9e6af12a0a380dd8eb4
Contents?: true
Size: 960 Bytes
Versions: 4
Compression:
Stored size: 960 Bytes
Contents
module Lipseys class Response def initialize(response) @response = response case @response when Net::HTTPUnauthorized Lipseys::Error::NotAuthorized.new(@response.body) when Net::HTTPNotFound Lipseys::Error::NotFound.new(@response.body) when Net::HTTPNoContent Lipseys::Error::NoContent.new(@response.body) when Net::HTTPOK, Net::HTTPSuccess _data = (JSON.parse(@response.body) if @response.body.present?) @data = case when _data.is_a?(Hash) _data.deep_symbolize_keys when _data.is_a?(Array) _data.map(&:deep_symbolize_keys) end else raise Lipseys::Error::RequestError.new(@response.body) end end def [](key) @data[key] end def body @data end def fetch(key) @data.fetch(key) end def success? !!self[:success] && self[:errors].empty? end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
lipseys-6.1.0 | lib/lipseys/response.rb |
lipseys-6.0.2 | lib/lipseys/response.rb |
lipseys-6.0.1 | lib/lipseys/response.rb |
lipseys-6.0.0 | lib/lipseys/response.rb |