Sha256: efe94eac94a6360704d872a15a8df50f6c3b4464cd43be6950678c58304e8a9b

Contents?: true

Size: 635 Bytes

Versions: 24

Compression:

Stored size: 635 Bytes

Contents

module Aptible
  module Resource
    class Errors
      attr_accessor :status_code, :messages, :full_messages

      def self.from_exception(exception)
        new.tap do |errors|
          response_json = JSON.parse(exception.response.body)
          errors.messages = { base: response_json['message'] }
          errors.full_messages = [response_json['message']]
          errors.status_code = exception.response.status
        end
      end

      def messages
        @messages ||= {}
      end

      def full_messages
        @full_messages ||= []
      end

      def any?
        full_messages.any?
      end
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
aptible-resource-1.1.0 lib/aptible/resource/errors.rb
aptible-resource-1.1.0.pre.0 lib/aptible/resource/errors.rb
aptible-resource-1.0.2 lib/aptible/resource/errors.rb
aptible-resource-1.0.1 lib/aptible/resource/errors.rb
aptible-resource-1.0.0 lib/aptible/resource/errors.rb
aptible-resource-0.5.0 lib/aptible/resource/errors.rb
aptible-resource-0.4.0 lib/aptible/resource/errors.rb
aptible-resource-0.3.8 lib/aptible/resource/errors.rb
aptible-resource-0.3.7 lib/aptible/resource/errors.rb
aptible-resource-0.3.6 lib/aptible/resource/errors.rb
aptible-resource-0.3.5 lib/aptible/resource/errors.rb
aptible-resource-0.3.4 lib/aptible/resource/errors.rb
aptible-resource-0.3.3 lib/aptible/resource/errors.rb
aptible-resource-0.3.2 lib/aptible/resource/errors.rb
aptible-resource-0.3.1 lib/aptible/resource/errors.rb
aptible-resource-0.3.0 lib/aptible/resource/errors.rb
aptible-resource-0.2.9 lib/aptible/resource/errors.rb
aptible-resource-0.2.8 lib/aptible/resource/errors.rb
aptible-resource-0.2.7 lib/aptible/resource/errors.rb
aptible-resource-0.2.6 lib/aptible/resource/errors.rb