Register a one-time event handler. Automatically removed after first invocation.
(
self, event_type: str, handler: Callable[..., Any] | None = None
)
| 4444 | return self |
| 4445 | |
| 4446 | def once( |
| 4447 | self, event_type: str, handler: Callable[..., Any] | None = None |
| 4448 | ) -> Union[ResponsesConnection, Callable[[Callable[..., Any]], Callable[..., Any]]]: |
| 4449 | """Register a one-time event handler. |
| 4450 | |
| 4451 | Automatically removed after first invocation. |
| 4452 | """ |
| 4453 | if handler is not None: |
| 4454 | self._event_handler_registry.add(event_type, handler, once=True) |
| 4455 | return self |
| 4456 | |
| 4457 | def decorator(fn: Callable[..., Any]) -> Callable[..., Any]: |
| 4458 | self._event_handler_registry.add(event_type, fn, once=True) |
| 4459 | return fn |
| 4460 | |
| 4461 | return decorator |
| 4462 | |
| 4463 | def dispatch_events(self) -> None: |
| 4464 | """Run the event loop, dispatching received events to registered handlers. |