Sha256: feb3fb44b5686be6842fcff0606ce43482e560d5e68b26342e437cdd60bc19e9

Contents?: true

Size: 575 Bytes

Versions: 3

Compression:

Stored size: 575 Bytes

Contents

module Cloudhdr
  class Response < Base

    attr_accessor :code, :body, :raw_body, :raw_response

    def initialize(options={})
      options.each do |k, v|
        send("#{k}=", v) if respond_to?("#{k}=")
      end
    end

    def success?
      code.to_i > 199 && code.to_i < 300
    end

    def errors
      if body.is_a?(Hash)
        Array(body['errors']).compact
      else
        []
      end
    end

    def body_without_wrapper
      if body.is_a?(Hash) && body['api_response']
        body['api_response']
      else
        body
      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
cloudhdr-0.0.3 lib/cloudhdr/response.rb
cloudhdr-0.0.2 lib/cloudhdr/response.rb
cloudhdr-0.0.1 lib/cloudhdr/response.rb