Skip to content

basalt / http/src / HttpServerCollector

Class: HttpServerCollector ​

Defined in: http/src/server.ts:40

Collects hooks and routes registered by edge plugins, for an adapter to wire into its framework at mount time. Adapters register one of these as HTTP_SERVER and read the buffers when they mount.

Implements ​

Constructors ​

Constructor ​

> new HttpServerCollector(): HttpServerCollector

Returns ​

HttpServerCollector

Properties ​

afterHooks ​

> readonly afterHooks: AfterHook[] = []

Defined in: http/src/server.ts:42


extraRoutes ​

> readonly extraRoutes: object[] = []

Defined in: http/src/server.ts:43

handler ​

> handler: SimpleHandler

method ​

> method: HttpMethod

url ​

> url: string


preHooks ​

> readonly preHooks: PreHook[] = []

Defined in: http/src/server.ts:41

Methods ​

addRoute() ​

> addRoute(method, url, handler): void

Defined in: http/src/server.ts:51

Register a standalone route (e.g. /livez, /metrics, /openapi.json).

Parameters ​

method ​

HttpMethod

url ​

string

handler ​

SimpleHandler

Returns ​

void

Implementation of ​

HttpServer.addRoute


after() ​

> after(hook): void

Defined in: http/src/server.ts:48

Register a post-response hook (metrics, tracing end).

Parameters ​

hook ​

AfterHook

Returns ​

void

Implementation of ​

HttpServer.after


runAfter() ​

> runAfter(request, reply, statusCode, durationMs): Promise<void>

Defined in: http/src/server.ts:64

Parameters ​

request ​

HttpRequest

reply ​

HttpReply

statusCode ​

number

durationMs ​

number

Returns ​

Promise<void>


runPre() ​

> runPre(request, reply): Promise<boolean>

Defined in: http/src/server.ts:56

Runs pre-hooks in order; resolves true if one of them sent the reply.

Parameters ​

request ​

HttpRequest

reply ​

HttpReply

Returns ​

Promise<boolean>


use() ​

> use(hook): void

Defined in: http/src/server.ts:45

Register pre-routing middleware (rate limit, CORS, security headers, tracing start).

Parameters ​

hook ​

PreHook

Returns ​

void

Implementation of ​

HttpServer.use

Released under the MIT License.