1313OTHER DEALINGS IN THE SOFTWARE.
1414"""
1515
16- import asyncio
17- from enum import Enum , auto
16+ from enum import Enum
1817from typing import ClassVar , Optional , Dict , Any
1918
20- __all__ = ["HTTPClientLibrary" , " ResponseData" , "RequestMethod" , "Route" , "get_http_client" ]
19+ __all__ = ["ResponseData" , "RequestMethod" , "Route" , "get_http_client" ]
2120
2221
2322class Missing :
@@ -27,42 +26,22 @@ class Missing:
2726MISSING : Any = Missing ()
2827
2928
30- class HTTPClientLibrary (Enum ):
31- AIOHTTP = auto ()
32- HTTPX = auto ()
33-
34-
35- def get_http_client (
36- loop : asyncio .AbstractEventLoop , solvedac_token : Optional [str ] = None , lib : Optional [HTTPClientLibrary ] = None
37- ):
38- if lib is None :
39- try :
40- import aiohttp
41- from solvedac_community .HTTPClients .aiohttp_client import AiohttpHTTPClient
42-
43- return AiohttpHTTPClient (loop , solvedac_token )
44- except ImportError :
45- pass
46-
47- try :
48- import httpx
49- from solvedac_community .HTTPClients .httpx_client import HttpxHTTPClient
50-
51- return HttpxHTTPClient (loop , solvedac_token )
52- except ImportError :
53- pass
29+ def get_http_client (solvedac_token : Optional [str ] = None ):
30+ try :
31+ from solvedac_community .HTTPClients .aiohttp_client import AiohttpHTTPClient
5432
55- raise ImportError ("At least one of aiohttp or httpx libraries is required" )
33+ return AiohttpHTTPClient (solvedac_token )
34+ except ImportError :
35+ pass
5636
57- if lib == HTTPClientLibrary . HTTPX :
37+ try :
5838 from solvedac_community .HTTPClients .httpx_client import HttpxHTTPClient
5939
60- return HttpxHTTPClient (loop , solvedac_token )
61-
62- elif lib == HTTPClientLibrary .AIOHTTP :
63- from solvedac_community .HTTPClients .aiohttp_client import AiohttpHTTPClient
40+ return HttpxHTTPClient (solvedac_token )
41+ except ImportError :
42+ pass
6443
65- return AiohttpHTTPClient ( loop , solvedac_token )
44+ raise ImportError ( "At least one of aiohttp or httpx libraries is required." )
6645
6746
6847class RequestMethod (Enum ):
0 commit comments