gatenet.core package

Submodules

gatenet.core.events module

Common event names used across modules.

These constants help avoid typos and keep a shared vocabulary for hooks.

gatenet.core.hooks module

class gatenet.core.hooks.Hooks[source]

Bases: object

A tiny, dependency-free hook system.

  • Register callbacks under a string key (event name).

  • Emit events with arbitrary kwargs; results are collected and returned.

  • Supports simple middleware patterns across modules (HTTP, clients, diagnostics).

Example

hooks = Hooks() hooks.on(”http:before_request”, lambda req: req) hooks.emit(”http:before_request”, req=request)

clear(event=None)[source]

Clear all callbacks for an event, or all events if None.

Return type:

None

emit(event, **kwargs)[source]

Emit an event and collect results from listeners.

Parameters:
  • event (str) – The event name.

  • **kwargs (Any) – Arbitrary keyword args to pass to listeners.

Return type:

List[Any]

Returns:

A list of results returned by listeners (order preserved).

off(event, fn)[source]

Remove a callback for an event if present.

Return type:

None

on(event, fn)[source]

Register a callback for an event.

Parameters:
  • event (str) – The event name.

  • fn (Callable[..., Any]) – The callback function.

Return type:

None

Module contents

Core utilities for extensibility and cross-module primitives.

Exports: - Hooks: lightweight event bus for registering and emitting hooks. - events: common event name constants.

class gatenet.core.Hooks[source]

Bases: object

A tiny, dependency-free hook system.

  • Register callbacks under a string key (event name).

  • Emit events with arbitrary kwargs; results are collected and returned.

  • Supports simple middleware patterns across modules (HTTP, clients, diagnostics).

Example

hooks = Hooks() hooks.on(”http:before_request”, lambda req: req) hooks.emit(”http:before_request”, req=request)

clear(event=None)[source]

Clear all callbacks for an event, or all events if None.

Return type:

None

emit(event, **kwargs)[source]

Emit an event and collect results from listeners.

Parameters:
  • event (str) – The event name.

  • **kwargs (Any) – Arbitrary keyword args to pass to listeners.

Return type:

List[Any]

Returns:

A list of results returned by listeners (order preserved).

off(event, fn)[source]

Remove a callback for an event if present.

Return type:

None

on(event, fn)[source]

Register a callback for an event.

Parameters:
  • event (str) – The event name.

  • fn (Callable[..., Any]) – The callback function.

Return type:

None