Sha256: a4cf04e85e93ad34322fa15695499c3df13ef4a893c02fd4176728d95635a846

Contents?: true

Size: 910 Bytes

Versions: 13

Compression:

Stored size: 910 Bytes

Contents

# encoding: utf-8

require 'descendants_tracker'

module Github
  module Error
    class GithubError < StandardError
      extend DescendantsTracker

      attr_reader :response_message, :response_headers

      # Initialize a new Github error object.
      #
      def initialize(message=$!)
        if message.respond_to?(:backtrace)
          super(message.message)
          @response_message = message
        else
          super(message.to_s)
        end
      end

      def backtrace
        @response_message ? @response_message.backtrace : super
      end

    end # GithubError
  end # Error
end # Github

require 'github_api/error/service_error'
require 'github_api/error/client_error'
Dir[File.dirname(__FILE__) + '/error/*.rb'].sort.each do |path|
  filename = File.basename(path)
  next if ['service_error.rb', 'client_error.rb'].include?(filename)
  require "github_api/error/#{filename}"
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
github_api-0.14.2 lib/github_api/error.rb
github_api-0.14.1 lib/github_api/error.rb
github_api-0.14.0 lib/github_api/error.rb
github_api-0.13.1 lib/github_api/error.rb
github_api-0.13.0 lib/github_api/error.rb
github_api-0.12.4 lib/github_api/error.rb
github_api-0.12.3 lib/github_api/error.rb
github_api-0.12.2 lib/github_api/error.rb
github_api-0.12.1 lib/github_api/error.rb
github_api-0.12.0 lib/github_api/error.rb
github_api-0.11.3 lib/github_api/error.rb
github_api-0.11.2 lib/github_api/error.rb
github_api-0.11.1 lib/github_api/error.rb