iwls_api_request.handler package
Submodules
iwls_api_request.handler.http_query_handler module
- class iwls_api_request.handler.http_query_handler.HTTPQueryHandler(session=None, **kwargs)[source]
Bases:
ABC- abstractmethod query(url, params=None, response_type=ResponseType.JSON)[source]
Méthode permettant d’effectuer la requête http.
- Parameters:
url (
str) – (str) Une chaîne de caractères correspondant à l’adresse url.params (
Optional[dict]) – (dict) Un dictionnaire avec les paramètres de la requête.response_type (
ResponseType) – (ResponseType) Un objet ResponseType.
- Return type:
- Returns:
(Response) La réponse de la requête http.
- _session
- class iwls_api_request.handler.http_query_handler.RateLimiterHandler(session_type=SessionType.REQUESTS, calls=100, period=1, cache_config=None, **kwargs)[source]
Bases:
RequestsHandler- query(url, params=None, response_type=ResponseType.JSON)[source]
” Méthode permettant d’effectuer la requête http.
- Parameters:
url (
str) – (str) Une chaîne de caractères correspondant à l’adresse url.params (
Optional[dict]) – (dict) Un dictionnaire avec les paramètres de la requête.response_type (
ResponseType) – (ResponseType) Un objet ResponseType.
- Return type:
- Returns:
(Response) La réponse de la requête http.
- _cache_config
- _calls
- _period
- _rate_limiter
- _session
- _session_type
- class iwls_api_request.handler.http_query_handler.RequestsHandler(session=None, session_type=SessionType.REQUESTS, cache_config=None, **kwargs)[source]
Bases:
HTTPQueryHandler- mount_adapter(adapter, prefix=None)[source]
Méthode permettant de monter un adaptateur pour certains urls.
- Parameters:
adapter (
HTTPAdapter) – (HTTPAdapter) Un adaptateur.prefix (
Optional[list[str]]) – (List[str]) Une liste de préfixe de urls sur lesquels monter l’adaptateur.
- Return type:
None
- query(url, params=None, response_type=ResponseType.JSON)[source]
Méthode permettant d’effectuer la requête http.
- Parameters:
url (
str) – (str) Une chaîne de caractères correspondant à l’adresse url.params (
Optional[dict]) – (dict) Un dictionnaire avec les paramètres de la requête.response_type (
ResponseType) – (ResponseType) Un objet ResponseType.
- Return type:
- Returns:
(Response) La réponse de la requête http.
- _cache_config
- _session
- _session_type
- iwls_api_request.handler.http_query_handler.get_cache_session(db=PosixPath('/home/docs/checkouts/readthedocs.org/user_builds/chs-csb-processing-en/checkouts/latest/src/iwls_api_request/handler/.cache/IWLS'), backend='sqlite', allowable_methods=('GET',), expire_after=600, timeout=5)[source]
Fonction permettant d’initialiser la cache.
- Parameters:
db (
Path) – (str) Le nom de la base de données.backend (
str) – (str) Le type de cache utilisé.allowable_methods (
tuple[str]) – (Tuple[str]) Les méthodes pouvant être utilisées pour la cache.expire_after (
int) – (int) La durée de vie des données dans la cache.timeout (
int) – (int) Le délai d’attente maximal pour les opérations de lecture et écriture sur la cache.
- Return type:
CachedSession- Returns:
(requests_cache.CachedSession) Un objet requests_cache.CachedSession.
- iwls_api_request.handler.http_query_handler.get_retry_adapter(status_code=None, max_retry=5, backoff_factor=2)[source]
Fonction permettant de retourner un adaptateur avec une stratégie de réessayage.
- Parameters:
status_code (
Optional[Collection[int]]) – (Collection[int]) Un liste contenant les codes http à réessayer.max_retry (
Optional[int]) – (int) Nombre d’essais lorsqu’un code de la liste p_status_code est retourné.pybackoff_factor (
Optional[int]) – (int) Le facteur à appliqué.
- Return type:
HTTPAdapter- Returns:
Un objet HTTPAdapter avec une stratégie de réessayage.
- iwls_api_request.handler.http_query_handler.get_session(session_type, cache_config)[source]
Fonction permettant d’obtenir un objet session.
- Parameters:
session_type (
SessionType) – (SessionType) Le type de session.cache_config (
CachedSessionConfig) – (CachedSessionConfig) La configuration de la cache.
- Return type:
Session|CachedSession- Returns:
requests.Session | CachedSession) Un objet Session ou CacheSession.
iwls_api_request.handler.models_handler module
- class iwls_api_request.handler.models_handler.CachedSessionConfig(db=PosixPath('/home/docs/checkouts/readthedocs.org/user_builds/chs-csb-processing-en/checkouts/latest/src/iwls_api_request/handler/.cache/IWLS'), backend='sqlite', allowable_methods=('GET',), expire_after=600, timeout=5)[source]
Bases:
object- allowable_methods: tuple[str] | None = ('GET',)
- backend: str | None = 'sqlite'
- db: Path | None = PosixPath('/home/docs/checkouts/readthedocs.org/user_builds/chs-csb-processing-en/checkouts/latest/src/iwls_api_request/handler/.cache/IWLS')
- expire_after: int | None = 600
- timeout: int | None = 5
- class iwls_api_request.handler.models_handler.Rate(calls=100, period=1)[source]
Bases:
object- calls: int = 100
- period: int = 1
- class iwls_api_request.handler.models_handler.Response(status_code=200, data=None, message=None, error=None)[source]
Bases:
object- data: dict | list | str = None
- error: str | list = None
- property is_ok: bool
- message: str = None
- status_code: int = 200
- class iwls_api_request.handler.models_handler.ResponseType(value)[source]
Bases:
StrEnum- JSON: str = 'json'
- TEXT: str = 'text'