|
15 | 15 | """Tools to parse mongo client options.""" |
16 | 16 | from __future__ import annotations |
17 | 17 |
|
18 | | -from typing import TYPE_CHECKING, Any, Mapping, Optional, Tuple |
| 18 | +from typing import TYPE_CHECKING, Any, Mapping, Optional, Sequence, Tuple, cast |
19 | 19 |
|
20 | 20 | from bson.codec_options import _parse_codec_options |
21 | 21 | from pymongo import common |
22 | 22 | from pymongo.auth import MongoCredential, _build_credentials_tuple |
23 | 23 | from pymongo.common import validate_boolean |
24 | 24 | from pymongo.compression_support import CompressionSettings |
25 | 25 | from pymongo.errors import ConfigurationError |
26 | | -from pymongo.monitoring import _EventListeners |
| 26 | +from pymongo.monitoring import _EventListener, _EventListeners |
27 | 27 | from pymongo.pool import PoolOptions |
28 | 28 | from pymongo.read_concern import ReadConcern |
29 | 29 | from pymongo.read_preferences import ( |
@@ -152,7 +152,7 @@ def _parse_pool_options( |
152 | 152 | connect_timeout = options.get("connecttimeoutms", common.CONNECT_TIMEOUT) |
153 | 153 | socket_timeout = options.get("sockettimeoutms") |
154 | 154 | wait_queue_timeout = options.get("waitqueuetimeoutms", common.WAIT_QUEUE_TIMEOUT) |
155 | | - event_listeners = options.get("event_listeners") |
| 155 | + event_listeners = cast(Optional[Sequence[_EventListener]], options.get("event_listeners")) |
156 | 156 | appname = options.get("appname") |
157 | 157 | driver = options.get("driver") |
158 | 158 | server_api = options.get("server_api") |
|
0 commit comments