Sha256: d949c662e328fef6fa6eb4fd56b50bdf15bec53e800bdb21eba70836109e12ac
Contents?: true
Size: 1017 Bytes
Versions: 6
Compression:
Stored size: 1017 Bytes
Contents
module Ecoportal module API module Common class WrappedResponse include Enumerable attr_reader :response, :result def initialize(response, klass) @response = response @klass = klass if @response.success? @result = if @response.body.is_a?(Array) @response.body.map do |doc| @klass.new(doc) end else @klass.new(@response.body) end end end def body response.body.to_s end def each [*result].each do |doc| yield doc end end def status response.status.code end def success? response.success? end def pretty_print if success? each(&:pretty_print) else puts "Request failed." end end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems