Source code for lib.http

from http import HTTPStatus

from utils.log import Log


[docs]class HTTPMethod(object): """Constants representing various HTTP request methods.""" GET = "get" PUT = "put" POST = "post" DELETE = "delete"
code_priority_order = cpo = { HTTPStatus.OK: 1, HTTPStatus.CREATED: 2, HTTPStatus.RESET_CONTENT: 2, HTTPStatus.NOT_MODIFIED: 0, HTTPStatus.NOT_FOUND: 3, HTTPStatus.NO_CONTENT: 4, HTTPStatus.CONFLICT: 4, HTTPStatus.NOT_ACCEPTABLE: 4, HTTPStatus.UNPROCESSABLE_ENTITY: 4, } def __lt(code_a, code_b): pa = __get(code_a) pb = __get(code_b) return pa is not None and pb is not None and pa < pb def __lte(code_a, code_b): pa = __get(code_a) pb = __get(code_b) return pa is not None and pb is not None and pa <= pb def __gt(code_a, code_b): pa = __get(code_a) pb = __get(code_b) return pa is not None and pb is not None and pa > pb def __gte(code_a, code_b): pa = __get(code_a) pb = __get(code_b) return pa is not None and pb is not None and pa >= pb def __eq(code_a, code_b): pa = __get(code_a) pb = __get(code_b) return pa is not None and pb is not None and pa == pb def __get(code): po = cpo.get(code, None) if po is None: Log.get("http-lib").warn(f"{code} without priority order.") HTTPStatus.lt = __lt HTTPStatus.lte = __lte HTTPStatus.gt = __gt HTTPStatus.gte = __gte HTTPStatus.eq = __eq