Sha256: 9f4b654cfe52fb3a30a73198e6b0f91a59e354f1d62534afb14ebd4bb19922ed
Contents?: true
Size: 690 Bytes
Versions: 2
Compression:
Stored size: 690 Bytes
Contents
module PensioAPI module Responses class Base include PensioAPI::Mixins::MethodMissing attr_reader :raw def initialize(request) @raw = request.body @headers = request.headers unless success? raise PensioAPI::Errors::BadRequest.new(request) unless header_ok raise PensioAPI::Errors::GatewayError.new(request) unless body_ok end end def success? header_ok && body_ok end private def header_ok @headers['ErrorCode'].to_i == 0 end def body_ok !@raw.has_key?('Result') || ['Success', 'OK', nil].include?(@raw['Result']) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
pensio_api-0.2.3 | lib/pensio_api/responses/base.rb |
pensio_api-0.2.2 | lib/pensio_api/responses/base.rb |