30 lines
827 B
Python
30 lines
827 B
Python
from slingshot_microservice.typing import ReadFileFn, WriteFileFn
|
|
from slingshot_microservice import Microservice
|
|
from typing import Generator
|
|
from sqlalchemy.engine.base import Connection
|
|
|
|
|
|
def startup(
|
|
read_file: ReadFileFn,
|
|
write_file: WriteFileFn,
|
|
_connection: Connection,
|
|
) -> Generator[tuple[int, bool | int | str], None, None]:
|
|
if False:
|
|
yield (0, True)
|
|
|
|
def process(
|
|
request: int,
|
|
read_file: ReadFileFn,
|
|
write_file: WriteFileFn,
|
|
_connection: Connection,
|
|
) -> Generator[tuple[int, bool | int | str], None, None]:
|
|
reader = read_file("in", request)
|
|
input_data = reader.read().decode()
|
|
writer = write_file("out", request)
|
|
writer.write(f"Hello {input_data}".encode())
|
|
yield (request, True)
|
|
|
|
|
|
microservice = Microservice("simple-py-microservice", "sys-map.slingshot.cv", startup, process)
|
|
microservice.start()
|