timcase/echonest

View on GitHub
lib/echowrap/error/server_error.rb

Summary

Maintainability
A
0 mins
Test Coverage
require 'echowrap/error'

module Echowrap
  class Error
    # Raised when Echowrap returns a 5xx HTTP status code
    class ServerError < Echowrap::Error
      MESSAGE = "Server Error"

      # Create a new error from an HTTP environment
      #
      # @param response [Hash]
      # @return [Echowrap::Error]
      def self.from_response(response={})
        new(nil, response[:response_headers])
      end

      # Initializes a new ServerError object
      #
      # @param message [String]
      # @param response_headers [Hash]
      # @return [Echowrap::Error::ServerError]
      def initialize(message=nil, response_headers={})
        super((message || self.class.const_get(:MESSAGE)), response_headers)
      end

    end
  end
end