Skip to content

@codesoul-co/hypha-core / modules/runtime/runtime-query-service

模块用法

用于执行该边界的运行时行为。Runtime query service 模块公开 1 类、1 接口。

从包入口导入

ts
import {
  RuntimeQueryService,
} from '@codesoul-co/hypha-core';

import type {
  RuntimeQueryServiceOptions,
} from '@codesoul-co/hypha-core';

使用要点

  • 1 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 1 个类提供可实例化的运行时实现;构造参数与公开方法在各自条目中完整列出。

公共导出

Symbol种类签名说明
RuntimeQueryServicenew RuntimeQueryService(options: RuntimeQueryServiceOptions): RuntimeQueryServiceRuntime Query Service 类,共公开 6 个构造函数或成员;精确签名见本条目的声明与成员表。
RuntimeQueryServiceOptions接口interface RuntimeQueryServiceOptionsRuntime Query Service Options 接口,共包含 4 个公开字段或方法。

RuntimeQueryService

Runtime Query Service 类,共公开 6 个构造函数或成员;精确签名见本条目的声明与成员表。

声明

text
export declare class RuntimeQueryService implements RuntimeQueryServiceContract {
    constructor(options: RuntimeQueryServiceOptions);
    getRun(input: RuntimeQueryRequest): Promise<RuntimeRunView | null>;
    getFSM(input: RuntimeQueryRequest): Promise<RuntimeOrchestrationProjection | null>;
    getTimeline(input: RuntimeTimelineRequest): Promise<RuntimeTimelineResult>;
    getPendingWaits(input: RuntimeQueryRequest): Promise<RuntimePendingWaitProjection[]>;
    explainState(input: RuntimeQueryRequest): Promise<RuntimeStateExplanation | null>;
}

公开成员

成员种类签名说明
constructor构造函数(options: RuntimeQueryServiceOptions): RuntimeQueryService创建该类的实例。
explainState方法explainState(input: RuntimeQueryRequest): Promise<RuntimeStateExplanation | null>公开方法;参数与返回类型以签名列为准。
getFSM方法getFSM(input: RuntimeQueryRequest): Promise<RuntimeOrchestrationProjection | null>公开方法;参数与返回类型以签名列为准。
getPendingWaits方法getPendingWaits(input: RuntimeQueryRequest): Promise<RuntimePendingWaitProjection[]>公开方法;参数与返回类型以签名列为准。
getRun方法getRun(input: RuntimeQueryRequest): Promise<RuntimeRunView | null>公开方法;参数与返回类型以签名列为准。
getTimeline方法getTimeline(input: RuntimeTimelineRequest): Promise<RuntimeTimelineResult>公开方法;参数与返回类型以签名列为准。

RuntimeQueryServiceOptions

Runtime Query Service Options 接口,共包含 4 个公开字段或方法。

声明

text
export interface RuntimeQueryServiceOptions {
    events: Pick<EventRuntime, 'read' | 'getStreamHead'>;
    projections: ProjectionEngine;
    projectionStore: ProjectionStore<RuntimeOrchestrationProjection>;
    now?: () => string;
}

契约成员

成员种类签名说明
events属性events: Pick<EventRuntime, "read" | "getStreamHead">公开属性;类型、只读和可选状态以签名列为准。
now方法now?(): string公开方法;参数与返回类型以签名列为准。
projections属性projections: ProjectionEngine公开属性;类型、只读和可选状态以签名列为准。
projectionStore属性projectionStore: ProjectionStore<RuntimeOrchestrationProjection>公开属性;类型、只读和可选状态以签名列为准。