本文へ移動

サービス

コンテキストサービスの基底クラスです。プラグインとして読み込まれたサブクラスは、自身を ctx.<name> として登録します。

ctx 上で名前付き API を公開するサービスの基底クラスです。

サブクラスはコンストラクターから super(ctx, name) を呼び出します。サービスは直ちに登録され、所有するファイバーとともに自動的に削除されます。

ソース

service.name

ts
/** The service name this instance is registered under. */
public name!: string

このインスタンスが登録されるサービス名です。

ソース

静的メンバー

Service.init

ts
/** Symbol key of an instance method run after construction (class plugins). */
static readonly init: unique symbol

構築後に実行されるインスタンスメソッドのシンボルキーです(クラスプラグイン)。

ソース

Service.check

ts
/** Symbol key of the availability predicate passed to `ctx.provide()`. */
static readonly check: unique symbol

ctx.provide() に渡される可用性述語のシンボルキーです。

ソース

Service.config

ts
/** Symbol key of the phantom intercept-config type parameter. */
static readonly config: unique symbol

ファントム intercept-config 型パラメーターのシンボルキーです。

ソース

Service.invoke

ts
/** Symbol key of the call body making a service callable (e.g. `ctx.logger()`). */
static readonly invoke: unique symbol

サービスを呼び出し可能にする呼び出し本体のシンボルキーです(例: ctx.logger())。

ソース

Service.extend

ts
/** Symbol key of the helper deriving an extended service instance. */
static readonly extend: unique symbol

拡張されたサービスインスタンスを導出するヘルパーのシンボルキーです。

ソース

Service.tracker

ts
/** Symbol key of the tracker metadata used for context tracing. */
static readonly tracker: unique symbol

コンテキストトレースに使用するトラッカーメタデータのシンボルキーです。

ソース

Service.resolveConfig

ts
/** Symbol key of the intercept-config resolution helper below. */
static readonly resolveConfig: unique symbol

以下の intercept-config 解決ヘルパーのシンボルキーです。

ソース