octomachinery.routing.abc module¶

Octomachinery router base interface definitions.

class octomachinery.routing.abc.OctomachineryRouterBase[source]¶

Bases: object

Octomachinery router base.

abstractmethod async dispatch(event: GitHubEvent, *args: Any, **kwargs: Any) → None[source]¶

Invoke coroutine handler tasks for the given event.

abstractmethod emit_routes_for(event_name: str, event_payload: Any) → Iterator[Callable[[_P], Awaitable[None]]][source]¶

Emit callbacks that match given event and payload.

Parameters:
  • event_name (str) – name of the GitHub event

  • event_payload (str) – details of the GitHub event

Yields:

coroutine event handlers