from .interface import ContextMngrInterface import asyncio class ContextMngrProxy(ContextMngrInterface): def __init__(self): self._proxify("dev.ezri.sway", "/ContextManager") async def listen(manager: ContextMngrProxy): print(await manager.get_workspace_data(), flush=True) async for event in manager.tree_changed: print(event, flush=True) def main(): loop = asyncio.new_event_loop() manager = ContextMngrProxy() loop.run_until_complete(listen(manager)) def get_workspace_definition(): loop = asyncio.new_event_loop() manager = ContextMngrProxy() print(loop.run_until_complete(manager.get_workspace_definition()))