from .request_handler import _HttpRequestHandler class RequestBuilder: """ A Builder for HTTP Request class Attributes: __url (str): URL at which the request is made __headers (dict): __body (dict): __params (dict): Query params __method (str): HTTP method (GET, POST, ...) """ def __init__(self): self.__url = "" self.__headers = {} self.__body = None self.__params = None self.__method = "GET" def set_url(self, url): self.__url = url return self def set_headers(self, headers): self.__headers = headers return self def set_body(self, body): self.__body = body return self def set_params(self, params): self.__params = params return self def set_method(self, method): self.__method = method return self def build(self): """Based on the set parameters it returns a Request Handler object""" return _HttpRequestHandler(url=self.__url, method=self.__method, body=self.__body, params=self.__params, headers=self.__headers)