lib/scrivito/content_service.rb in scrivito_sdk-0.18.1 vs lib/scrivito/content_service.rb in scrivito_sdk-0.30.0.rc1

- old
+ new

@@ -91,19 +91,22 @@ request.body = MultiJson.dump(payload) request end def handle_response(response) - if response.code.first == '2' - retry_after = response["Retry-After"] + case code = response.code + when /^2/ + retry_after = response['Retry-After'] @next_request_not_before = retry_after ? Time.now + retry_after.to_f : nil MultiJson.load(response.body) - elsif response.code == "429" - raise RateLimitExceeded.new(response["Retry-After"]) - elsif response.code == '403' - raise AccessDenied.new(response.body) + when '429' then raise RateLimitExceeded.new(response['Retry-After']) + when '403' then raise AccessDenied.new(response.body) + when '401', '404' + raise NetworkError.new( + 'There was a problem communicating with the Scrivito backend. '\ + 'Check your configuration, i.e. "tenant" and "api_key".', code) else - raise NetworkError.new("Server responded with status code #{response.code}", response.code) + raise NetworkError.new("Server responded with status code #{code}", code) end end def request_headers {