Skip to main content

QHTTPEngine

@quik/http


@quik/http / QHTTPEngine

Abstract Class: QHTTPEngine

Defined in: http/src/engine/QHTTPEngine.ts:17

Base class for HTTP engines providing common lifecycle helpers.

Extends​

  • QObject

Implements​

Constructors​

Constructor​

new QHTTPEngine(): QHTTPEngine

Returns​

QHTTPEngine

Inherited from​

QObject.constructor

Properties​

_server​

protected _server: Server

Defined in: http/src/engine/QHTTPEngine.ts:25

Instance of the node:http server.


_setupCompleted​

protected _setupCompleted: boolean = false

Defined in: http/src/engine/QHTTPEngine.ts:18

Accessors​

engine​

Get Signature​

get abstract engine(): string

Defined in: http/src/engine/QHTTPEngine.ts:20

Name of the underlying engine implementation.

Returns​

string

Name of the underlying engine implementation.

Implementation of​

IQHTTPEngine.engine


host​

Get Signature​

get host(): string

Defined in: http/src/engine/QHTTPEngine.ts:51

Lists the host on which we expose the server.

Returns​

string

Host on which the server listens.

Implementation of​

IQHTTPEngine.host


isListening​

Get Signature​

get isListening(): boolean

Defined in: http/src/engine/QHTTPEngine.ts:37

Flag to let the user know that the server was started and listening for connections.

Returns​

boolean

Indicates whether the server is listening.

Implementation of​

IQHTTPEngine.isListening


isSetupCompleted​

Get Signature​

get protected isSetupCompleted(): boolean

Defined in: http/src/engine/QHTTPEngine.ts:55

Returns​

boolean


logger​

Get Signature​

get protected logger(): IQLogger

Defined in: core/src/QObject.ts:15

The logger getter for the object.

Returns​

IQLogger

Inherited from​

QObject.logger


name​

Get Signature​

get name(): string

Defined in: core/src/QObject.ts:8

Returns​

string

Inherited from​

QObject.name


port​

Get Signature​

get port(): number

Defined in: http/src/engine/QHTTPEngine.ts:44

Lists the port on which we expose the server.

Returns​

number

Port on which the server listens.

Implementation of​

IQHTTPEngine.port


server​

Get Signature​

get server(): Server

Defined in: http/src/engine/QHTTPEngine.ts:30

Getter for the node:http server.

Returns​

Server

Node HTTP server instance used by the engine.

Implementation of​

IQHTTPEngine.server


staticContentDefinition​

Get Signature​

get protected staticContentDefinition(): QStaticContent

Defined in: http/src/engine/QHTTPEngine.ts:59

Returns​

QStaticContent

Methods​

addResponseSpanAttributes()​

protected addResponseSpanAttributes(span, response): void

Defined in: http/src/engine/QHTTPEngine.ts:275

Add response metadata to the telemetry span when available.

Parameters​

span​

TelemetrySpan

response​

IQResponse

Returns​

void


close()​

abstract protected close(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:134

Close the underlying server.

Returns​

Promise<void>


defaultErrorHandler()​

protected defaultErrorHandler(serverError, translate?): IQErrorResponse

Defined in: http/src/engine/QHTTPEngine.ts:148

Default error handler used when the engine fails processing a request.

Parameters​

serverError​

Error

The thrown error instance.

translate?​

QTranslatorFunction

Optional translation function.

Returns​

IQErrorResponse


endRequestSpan()​

protected endRequestSpan(span?): void

Defined in: http/src/engine/QHTTPEngine.ts:314

End the telemetry span when available.

Parameters​

span?​

TelemetrySpan

Returns​

void


endSpan()​

protected endSpan(span): void

Defined in: core/src/QObject.ts:35

End a span returned by startSpan.

Parameters​

span​

TelemetrySpan

The span to end.

Returns​

void

Inherited from​

QObject.endSpan


execute()​

protected execute(event, route, endpoint): Promise<IQResponse<any>>

Defined in: http/src/engine/QHTTPEngine.ts:226

Parameters​

event​

QEvent

route​

QRoute

endpoint​

IQEndpointDefinition

Returns​

Promise<IQResponse<any>>


getPath()​

protected getPath(...pathElements): string

Defined in: http/src/engine/QHTTPEngine.ts:222

Join multiple path elements using the framework utility.

Parameters​

pathElements​

...string[]

Returns​

string


listen()​

abstract protected listen(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:131

Listen for incoming connections.

Returns​

Promise<void>


recordRequestSpanError()​

protected recordRequestSpanError(span, err): void

Defined in: http/src/engine/QHTTPEngine.ts:325

Record an error on the telemetry span when available.

Parameters​

span​

TelemetrySpan

err​

unknown

Returns​

void


recordSpanError()​

protected recordSpanError(span, err): void

Defined in: core/src/QObject.ts:45

Record an exception on an active span.

Parameters​

span​

TelemetrySpan

The span to record the error on.

err​

unknown

The error to record.

Returns​

void

Inherited from​

QObject.recordSpanError


registerEndpoint()​

abstract protected registerEndpoint(route, endpoint): void

Defined in: http/src/engine/QHTTPEngine.ts:217

Register a single endpoint for the given route.

Parameters​

route​

QRoute

The parent route.

endpoint​

IQEndpointDefinition

Endpoint definition to register.

Returns​

void


registerErrorHandler()​

abstract protected registerErrorHandler(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:140

Register the error handler for the engine.

Returns​

Promise<void>


registerRoute()​

protected registerRoute(route): void

Defined in: http/src/engine/QHTTPEngine.ts:202

Register all endpoints associated with a route.

Parameters​

route​

QRoute

The route being registered.

Returns​

void


registerRoutes()​

protected registerRoutes(): void

Defined in: http/src/engine/QHTTPEngine.ts:187

Register all routes available in the router.

Returns​

void


registerStaticContent()​

abstract protected registerStaticContent(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:137

Register static content handlers.

Returns​

Promise<void>


reload()​

reload(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:108

Stop the server, re-register all routes and static content, then restart listening. The error handler registered at startup is preserved across reloads.

Returns​

Promise<void>

Implementation of​

IQHTTPEngine.reload


reset()​

abstract protected reset(): void

Defined in: http/src/engine/QHTTPEngine.ts:128

Reset the engine's internal routing state so that routes can be re-registered. Called by reload after the server is stopped.

Returns​

void


setSpanAttribute()​

protected setSpanAttribute(span, key, value): void

Defined in: core/src/QObject.ts:64

Set a single attribute on an active span.

Parameters​

span​

TelemetrySpan

The span to update.

key​

string

Attribute key.

value​

string | number | boolean

Attribute value.

Returns​

void

Inherited from​

QObject.setSpanAttribute


setupCompleted()​

protected setupCompleted(): void

Defined in: http/src/engine/QHTTPEngine.ts:100

Mark the setup process as completed.

Returns​

void


start()​

start(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:66

Start the HTTP server and register routes when needed.

Returns​

Promise<void>

Implementation of​

IQHTTPEngine.start


startRequestSpan()​

protected startRequestSpan(route, endpoint): TelemetrySpan

Defined in: http/src/engine/QHTTPEngine.ts:260

Start a telemetry span for the request pipeline when available.

Parameters​

route​

QRoute

endpoint​

IQEndpointDefinition

Returns​

TelemetrySpan


startSpan()​

protected startSpan(spanName, options?): TelemetrySpan

Defined in: core/src/QObject.ts:26

Start a telemetry span for the given operation name. Returns undefined when no telemetry provider is active.

Parameters​

spanName​

string

Name of the span.

options?​

TelemetrySpanOptions

Optional span attributes and kind.

Returns​

TelemetrySpan

Inherited from​

QObject.startSpan


stop()​

stop(): Promise<void>

Defined in: http/src/engine/QHTTPEngine.ts:87

Stop the HTTP server.

Returns​

Promise<void>

Implementation of​

IQHTTPEngine.stop