lib/ably/exceptions.rb in ably-1.0.4 vs lib/ably/exceptions.rb in ably-1.0.5

- old
+ new

@@ -11,11 +11,11 @@ # @!attribute [r] status # @return [String] HTTP status code of error # @!attribute [r] code # @return [String] Ably specific error code class BaseAblyException < StandardError - attr_reader :status, :code + attr_reader :status, :code, :request_id def initialize(message, status = nil, code = nil, base_exception = nil, options = {}) super message @base_exception = base_exception @@ -23,18 +23,20 @@ @status ||= base_exception.status if base_exception && base_exception.respond_to?(:status) @status ||= options[:fallback_status] @code = code @code ||= base_exception.code if base_exception && base_exception.respond_to?(:code) @code ||= options[:fallback_code] + @request_id ||= options[:request_id] end def to_s message = [super] if status || code additional_info = [] additional_info << "code: #{code}" if code additional_info << "http status: #{status}" if status additional_info << "base exception: #{@base_exception.class}" if @base_exception + additional_info << "request_id: #{request_id}" if request_id message << "(#{additional_info.join(', ')})" end message.join(' ') end