Source code for rankade.RankadeExceptions

# rankade.RankadeExceptions.py
[docs] class RankadeException(Exception): """ Base Exception, should not be raised directly. """ def __init__(self, message: str): self.message = message
[docs] class ApiErrorResponse(RankadeException): """ Base class for error response from API. Raised when no appropriate ApiErrorResponse subclass. Raised from: - {py:meth}`rankade.api.Api.Api._check_request` :param str url: URL queried. :param str verb: HTTP Method used. :param str status: Request HTTP status code. :param str code: API error code. :param str message: API error message. """ def __init__(self, url: str, verb: str, status: int, code: str = "", message: str = ""): self.url = url self.verb = verb self.status = status self.code = code super().__init__(message)
[docs] class AuthCredentials(ApiErrorResponse): """ Code will be "A001" or "A002", raised when key and/or secret are invalid or access has been disabled. Raised from: - {py:meth}`rankade.api.Api.Api._check_request` """ pass
[docs] class MatchValidation(ApiErrorResponse): """ Code will begin with "M" and message will contain contain details of validation error with the match. Raised from: - {py:meth}`rankade.api.Api.Api._check_request` """ pass
[docs] class NoValidCredentials(RankadeException): """ Raised when either no key & secret or no token has been supplied to main Rankade class. Raised from: - {py:class}`rankade.api.Api.Api` - {py:meth}`rankade.api.Api.Api._request_jwt` """ def __init__(self, message: str = "No Credentials Supplied"): super().__init__(message)
[docs] class Quotas(ApiErrorResponse): """ Code will begin with "Q" and message will contain details of the quota limit reached. Status should be either 429 or 202. Raised from: - {py:meth}`rankade.api.Api.Api._check_request` """ pass
[docs] class SearchTooShort(RankadeException): """ Raised when search term is less than 2 characters. API will return missing or invalid parameters which is not useful. Raised from: - {py:meth}`rankade.Rankade.Rankade.game_search` """ def __init__(self, search: str = ""): self.search = search super().__init__(f"Search must be at least 2 characters (got '{search}').")