Sha256: 1ea0b179d7d44ae9365325296bd6a04747f922e56164d482d29d54c15fea9cb6
Contents?: true
Size: 851 Bytes
Versions: 9
Compression:
Stored size: 851 Bytes
Contents
require 'multi_json' module Esplanade class Response class Raw class Body def initialize(request, raw_response, raw_body) @request = request @raw_response = raw_response @raw_body = raw_body end def to_string @string ||= @raw_body.body rescue nil @string ||= @raw_body.first rescue nil end def to_hash @hash ||= MultiJson.load(to_string) rescue MultiJson::ParseError raise BodyIsNotJson, message end private def message { request: { method: @request.raw.method, path: @request.raw.path }, status: @raw_response.status, body: @raw_response.body.to_string } end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems