@@ -4,27 +4,30 @@ from __future__ import annotations
44
55import argparse
66import json
7- from typing import Sequence , cast , Union
7+ import typing
88
9- from mesc .types import Endpoint , EndpointQuery
109import mesc
1110
11+ if typing .TYPE_CHECKING :
12+ from typing import Sequence , Union
13+ from mesc .types import Endpoint , EndpointQuery
14+
1215
1316def run_query (query : EndpointQuery ) -> Union [Endpoint , Sequence [Endpoint ], None ]:
1417 if query ["query_type" ] == "default_endpoint" :
15- default_fields = cast ( mesc .types .DefaultEndpointQuery , query ["fields" ])
18+ default_fields : mesc .types .DefaultEndpointQuery = query ["fields" ]
1619 return mesc .get_default_endpoint (** default_fields )
1720 elif query ["query_type" ] == "endpoint_by_name" :
18- name_fields = cast ( mesc .types .EndpointNameQuery , query ["fields" ])
21+ name_fields : mesc .types .EndpointNameQuery = query ["fields" ]
1922 return mesc .get_endpoint_by_name (** name_fields )
2023 elif query ["query_type" ] == "endpoint_by_network" :
21- network_fields = cast ( mesc .types .EndpointNetworkQuery , query ["fields" ])
24+ network_fields : mesc .types .EndpointNetworkQuery = query ["fields" ]
2225 return mesc .get_endpoint_by_network (** network_fields )
2326 elif query ["query_type" ] == "user_input" :
24- user_input_fields = cast ( mesc .types .UserInputQuery , query ["fields" ])
27+ user_input_fields : mesc .types .UserInputQuery = query ["fields" ]
2528 return mesc .get_endpoint_by_query (** user_input_fields )
2629 elif query ["query_type" ] == "multi_endpoint" :
27- multi_endpoint_fields = cast ( mesc .types .MultiEndpointQuery , query ["fields" ])
30+ multi_endpoint_fields : mesc .types .MultiEndpointQuery = query ["fields" ]
2831 return mesc .find_endpoints (** multi_endpoint_fields )
2932 elif query ["query_type" ] == "global_metadata" :
3033 return mesc .get_global_metadata (** query ["fields" ])
0 commit comments