Sha256: 2641cd31ccb682f2db50334a2e0ce15a7cd55af5dce38366b3c3e692d380e9cf
Contents?: true
Size: 981 Bytes
Versions: 4
Compression:
Stored size: 981 Bytes
Contents
module EZAPIClient class BaseResponse include Virtus.model attribute :raw_response, Object attribute :raw_body, String, lazy: true, default: :default_raw_body attribute(:response_body, IndifferentHash, { lazy: true, default: :default_response_body, }) attribute :success, Boolean, lazy: true, default: :default_success attribute :code, String, lazy: true, default: :default_code attribute :message, String, lazy: true, default: :default_message private def default_success return false if response_body.nil? response_body[:success] end def default_raw_body raw_response.body end def default_response_body JSON.parse(raw_body) rescue JSON::ParserError nil end def default_code return nil if response_body.nil? response_body[:code] end def default_message return nil if response_body.nil? response_body[:message] end end end
Version data entries
4 entries across 4 versions & 1 rubygems