class TerminalShop::APIStatusError
def self.for(url:, status:, body:, request:, response:, message: nil)
-
(TerminalShop::APIStatusError)
-
Parameters:
-
message
(String, nil
) -- -
response
(nil
) -- -
request
(nil
) -- -
body
(Object, nil
) -- -
status
(Integer
) -- -
url
(URI::Generic
) --
Other tags:
- Private: -
def self.for(url:, status:, body:, request:, response:, message: nil) kwargs = {url: url, status: status, body: body, request: request, response: response, message: message} case status in 400 TerminalShop::BadRequestError.new(**kwargs) in 401 TerminalShop::AuthenticationError.new(**kwargs) in 403 TerminalShop::PermissionDeniedError.new(**kwargs) in 404 TerminalShop::NotFoundError.new(**kwargs) in 409 TerminalShop::ConflictError.new(**kwargs) in 422 TerminalShop::UnprocessableEntityError.new(**kwargs) in 429 TerminalShop::RateLimitError.new(**kwargs) in (500..) TerminalShop::InternalServerError.new(**kwargs) else TerminalShop::APIStatusError.new(**kwargs) end end
def initialize(url:, status:, body:, request:, response:, message: nil)
-
message
(String, nil
) -- -
response
(nil
) -- -
request
(nil
) -- -
body
(Object, nil
) -- -
status
(Integer
) -- -
url
(URI::Generic
) --
Other tags:
- Private: -
def initialize(url:, status:, body:, request:, response:, message: nil) message ||= {url: url.to_s, status: status, body: body} super( url: url, status: status, body: body, request: request, response: response, message: message&.to_s ) end