11import os
22import logging
3- from typing import Final
43
54from concurrent import futures
65
7- import yatest .common as yat
86from library .python .testing .recipe import declare_recipe , set_env
97from library .recipes .common import find_free_ports
108
1816logger = logging .getLogger ('solomon_emulator_grpc.recipe' )
1917logging .basicConfig (level = logging .DEBUG )
2018
19+
2120def _dict_to_labels (request : ReadRequest ):
2221 result = dict ()
23-
22+
2423 result ["from" ] = str (request .from_time )
2524 result ["to" ] = str (request .to_time )
2625 result ["program" ] = f"program length { len (str (request .queries [0 ].value ))} "
@@ -34,6 +33,7 @@ def _dict_to_labels(request: ReadRequest):
3433
3534 return result
3635
36+
3737class DataService (DataServiceServicer ):
3838 def Read (self , request : ReadRequest , context ) -> ReadResponse :
3939 logger .debug ('ReadRequest: %s' , request )
@@ -44,7 +44,7 @@ def Read(self, request: ReadRequest, context) -> ReadResponse:
4444 context .set_code (grpc .StatusCode .INVALID_ARGUMENT )
4545 context .set_details (f"Project { project } does not exist" )
4646 return ReadResponse ()
47-
47+
4848 labels = _dict_to_labels (request )
4949 labels ["project" ] = project
5050
@@ -64,6 +64,7 @@ def Read(self, request: ReadRequest, context) -> ReadResponse:
6464
6565 return response
6666
67+
6768def serve (port : int ) -> None :
6869 server = grpc .server (futures .ThreadPoolExecutor (max_workers = 2 ))
6970 add_DataServiceServicer_to_server (
0 commit comments