Sha256: baf75a4dd5f67a30b4f0923895c122cd6ac95b17a39cbd709ca0ae0f2eae6a10

Contents?: true

Size: 755 Bytes

Versions: 4

Compression:

Stored size: 755 Bytes

Contents

module LightspeedRestaurantClient
  class LightspeedRestaurantClientError < StandardError
    attr_reader :message
    attr_reader :http_status
    attr_reader :http_body
    attr_reader :http_headers
    attr_reader :request_id
    attr_reader :json_body

    def initialize(message = nil, http_status = nil, http_body = nil, http_headers = nil)
      @message = message
      @http_status = http_status
      @http_body = http_body
      @http_headers = http_headers || {}
      @request_id = @http_headers[:request_id]
    end

    def to_s
      status_string = @http_status.nil? ? '' : "(Status #{@http_status}) "
      id_string = @request_id.nil? ? '' : "(Request #{@request_id}) "
      "#{status_string}#{id_string}#{@message}"
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
lightspeed_restaurant-1.1.2 lib/lightspeed_restaurant/errors/lightspeed_restaurant_error.rb
lightspeed_restaurant-1.1.1 lib/lightspeed_restaurant/errors/lightspeed_restaurant_error.rb
lightspeed_restaurant-1.1.0 lib/lightspeed_restaurant/errors/lightspeed_restaurant_error.rb
lightspeed_restaurant-1.0.0 lib/lightspeed_restaurant/errors/lightspeed_restaurant_error.rb