Exception: ScalarGalaxy::Errors::APIStatusError
Direct Known Subclasses
AuthenticationError, BadRequestError, ConflictError, InternalServerError, NotFoundError, PermissionDeniedError, RateLimitError, UnprocessableEntityError
Instance Attribute Summary collapse
Attributes inherited from APIError
Attributes inherited from Error
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(url:, status:, headers:, body:, request:, response:, message: nil) ⇒ APIStatusError
constructor
private
A new instance of APIStatusError.
Constructor Details
#initialize(url:, status:, headers:, body:, request:, response:, message: nil) ⇒ APIStatusError
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of APIStatusError.
181 182 183 184 185 186 187 188 189 190 191 192 |
# File 'lib/galaxy-ruby/errors.rb', line 181 def initialize(url:, status:, headers:, body:, request:, response:, message: nil) ||= {url: url.to_s, status: status, body: body} super( url: url, status: status, headers: headers, body: body, request: request, response: response, message: &.to_s ) end |
Instance Attribute Details
#status ⇒ Integer
|
|
# File 'lib/galaxy-ruby/errors.rb', line 168
|
Class Method Details
.for(url:, status:, headers:, body:, request:, response:, message: nil) ⇒ self
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 |
# File 'lib/galaxy-ruby/errors.rb', line 135 def self.for(url:, status:, headers:, body:, request:, response:, message: nil) kwargs = { url: url, status: status, headers: headers, body: body, request: request, response: response, message: } case status in 400 ScalarGalaxy::Errors::BadRequestError.new(**kwargs) in 401 ScalarGalaxy::Errors::AuthenticationError.new(**kwargs) in 403 ScalarGalaxy::Errors::PermissionDeniedError.new(**kwargs) in 404 ScalarGalaxy::Errors::NotFoundError.new(**kwargs) in 409 ScalarGalaxy::Errors::ConflictError.new(**kwargs) in 422 ScalarGalaxy::Errors::UnprocessableEntityError.new(**kwargs) in 429 ScalarGalaxy::Errors::RateLimitError.new(**kwargs) in 500.. then ScalarGalaxy::Errors::InternalServerError.new(**kwargs) else ScalarGalaxy::Errors::APIStatusError.new(**kwargs) end end |