Exception: HookSniff::ApiError
- Inherits:
-
StandardError
- Object
- StandardError
- HookSniff::ApiError
- Defined in:
- lib/hooksniff/errors.rb,
lib/hooksniff/api_error.rb
Overview
Base error class for all HookSniff API errors
Direct Known Subclasses
AuthenticationError, BadGatewayError, BadRequestError, ConflictError, ForbiddenError, GatewayTimeoutError, GoneError, InsufficientStorageError, InternalServerError, LoopDetectedError, NotFoundError, NotImplementedError, PayloadTooLargeError, RateLimitError, RequestTimeoutError, ServiceUnavailableError, UnauthorizedError, UnprocessableEntityError
Instance Attribute Summary collapse
-
#code ⇒ Object
readonly
Returns the value of attribute code.
-
#response_body ⇒ Object
readonly
Returns the value of attribute response_body.
-
#response_headers ⇒ Object
readonly
Returns the value of attribute response_headers.
Instance Method Summary collapse
-
#initialize(arg = nil) ⇒ ApiError
constructor
Usage examples: ApiError.new ApiError.new(“message”) ApiError.new(:code => 500, :response_headers => {}, :response_body => “”) ApiError.new(:code => 404, :message => “Not Found”).
- #message ⇒ Object
-
#to_s ⇒ Object
Override to_s to display a friendly error message.
Constructor Details
#initialize(arg = nil) ⇒ ApiError
12 13 14 15 16 17 |
# File 'lib/hooksniff/api_error.rb', line 12 def initialize(code:, response_headers: {}, response_body: nil) @code = code @response_headers = response_headers @response_body = response_body super("HookSniff API error #{code}") end |
Instance Attribute Details
#code ⇒ Object (readonly)
Returns the value of attribute code.
6 7 8 |
# File 'lib/hooksniff/errors.rb', line 6 def code @code end |
#response_body ⇒ Object (readonly)
Returns the value of attribute response_body.
6 7 8 |
# File 'lib/hooksniff/errors.rb', line 6 def response_body @response_body end |
#response_headers ⇒ Object (readonly)
Returns the value of attribute response_headers.
6 7 8 |
# File 'lib/hooksniff/errors.rb', line 6 def response_headers @response_headers end |
Instance Method Details
#message ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/hooksniff/api_error.rb', line 34 def if @message.nil? msg = "Error message: the server returns an error" else msg = @message end msg += "\nHTTP status code: #{code}" if code msg += "\nResponse headers: #{response_headers}" if response_headers msg += "\nResponse body: #{response_body}" if response_body msg end |
#to_s ⇒ Object
Override to_s to display a friendly error message
30 31 32 |
# File 'lib/hooksniff/api_error.rb', line 30 def to_s end |