Skip to content

@codesoul-co/hypha-core / modules/runtime/runtime-io-helpers

模块用法

用于执行该边界的运行时行为。Runtime io helpers 模块公开 3 类、1 函数、1 接口。

从包入口导入

ts
import {
  DefaultRuntimeEventHelper,
  DefaultRuntimeResourceHelper,
  DurableRuntimeEventCommitPort,
  createRuntimeIoHelperSdk,
} from '@codesoul-co/hypha-core';

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

使用要点

  • 1 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 3 个类提供可实例化的运行时实现;构造参数与公开方法在各自条目中完整列出。
  • 1 个函数是该模块的直接操作入口;每个 overload 的必需/可选参数与返回类型均在下方列出。

公共导出

Symbol种类签名说明
DefaultRuntimeEventHelpernew DefaultRuntimeEventHelper(options: DefaultRuntimeEventHelperOptions): DefaultRuntimeEventHelperDefault Runtime Event Helper 类,共公开 4 个构造函数或成员;精确签名见本条目的声明与成员表。
DefaultRuntimeResourceHelpernew DefaultRuntimeResourceHelper(dependencies: RuntimeResourceHelperDependencies): DefaultRuntimeResourceHelperDefault Runtime Resource Helper 类,共公开 5 个构造函数或成员;精确签名见本条目的声明与成员表。
DurableRuntimeEventCommitPortnew DurableRuntimeEventCommitPort(store: DurableEventStore): DurableRuntimeEventCommitPortDurable Runtime Event Commit Port 类,共公开 3 个构造函数或成员;精确签名见本条目的声明与成员表。
createRuntimeIoHelperSdk函数createRuntimeIoHelperSdk(options: { event: DefaultRuntimeEventHelperOptions; resource: RuntimeResourceHelperDependencies; }): RuntimeIoHelperSdkCreate Runtime Io Helper Sdk 函数,提供 1 个公开调用签名;参数与返回类型见下表。
DefaultRuntimeEventHelperOptions接口interface DefaultRuntimeEventHelperOptionsDefault Runtime Event Helper Options 接口,共包含 4 个公开字段或方法。

DefaultRuntimeEventHelper

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

声明

text
export declare class DefaultRuntimeEventHelper implements RuntimeEventHelper {
    constructor(options: DefaultRuntimeEventHelperOptions);
    append<T extends RuntimeJsonValue>(type: `runtime.observation.${string}`, payload: T, options?: RuntimeEventAppendOptions): Promise<FrameworkEvent<T>>;
    appendBatch(inputs: RuntimeObservationEventInput[]): Promise<FrameworkEvent[]>;
    readSince(sequence: number): Promise<FrameworkEvent[]>;
}

公开成员

成员种类签名说明
append方法append<T extends RuntimeJsonValue>(type: runtime.observation.${string}, payload: T, options?: RuntimeEventAppendOptions): Promise<FrameworkEvent<T>>公开方法;参数与返回类型以签名列为准。
appendBatch方法appendBatch(inputs: RuntimeObservationEventInput[]): Promise<FrameworkEvent[]>公开方法;参数与返回类型以签名列为准。
constructor构造函数(options: DefaultRuntimeEventHelperOptions): DefaultRuntimeEventHelper创建该类的实例。
readSince方法readSince(sequence: number): Promise<FrameworkEvent[]>公开方法;参数与返回类型以签名列为准。

DefaultRuntimeResourceHelper

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

声明

text
export declare class DefaultRuntimeResourceHelper implements RuntimeResourceHelper {
    constructor(dependencies: RuntimeResourceHelperDependencies);
    acquire(resources: Omit<RuntimeResourceRequest, 'requestedClaimId'>[], options: RuntimeResourceAcquireOptions): Promise<RuntimeResourceClaim[]>;
    renew(claims: RuntimeResourceClaim[], options: RuntimeResourceRenewOptions): Promise<RuntimeResourceClaim[]>;
    release(claims: RuntimeResourceClaim[]): Promise<void>;
    assertCurrent(claim: RuntimeResourceClaim): Promise<RuntimeResourceClaim>;
}

公开成员

成员种类签名说明
acquire方法acquire(resources: Omit<RuntimeResourceRequest, "requestedClaimId">[], options: RuntimeResourceAcquireOptions): Promise<RuntimeResourceClaim[]>公开方法;参数与返回类型以签名列为准。
assertCurrent方法assertCurrent(claim: RuntimeResourceClaim): Promise<RuntimeResourceClaim>公开方法;参数与返回类型以签名列为准。
constructor构造函数(dependencies: RuntimeResourceHelperDependencies): DefaultRuntimeResourceHelper创建该类的实例。
release方法release(claims: RuntimeResourceClaim[]): Promise<void>公开方法;参数与返回类型以签名列为准。
renew方法renew(claims: RuntimeResourceClaim[], options: RuntimeResourceRenewOptions): Promise<RuntimeResourceClaim[]>公开方法;参数与返回类型以签名列为准。

DurableRuntimeEventCommitPort

Durable Runtime Event Commit Port 类,共公开 3 个构造函数或成员;精确签名见本条目的声明与成员表。

声明

text
export declare class DurableRuntimeEventCommitPort implements RuntimeEventCommitPort {
    constructor(store: DurableEventStore);
    append(request: RuntimeEventCommitRequest): Promise<FrameworkEvent[]>;
    readSince(scope: RuntimeScope, sequence: number): Promise<FrameworkEvent[]>;
}

公开成员

成员种类签名说明
append方法append(request: RuntimeEventCommitRequest): Promise<FrameworkEvent[]>公开方法;参数与返回类型以签名列为准。
constructor构造函数(store: DurableEventStore): DurableRuntimeEventCommitPort创建该类的实例。
readSince方法readSince(scope: RuntimeScope, sequence: number): Promise<FrameworkEvent[]>公开方法;参数与返回类型以签名列为准。

createRuntimeIoHelperSdk

Create Runtime Io Helper Sdk 函数,提供 1 个公开调用签名;参数与返回类型见下表。

声明

text
export declare function createRuntimeIoHelperSdk(options: {
    event: DefaultRuntimeEventHelperOptions;
    resource: RuntimeResourceHelperDependencies;
}): RuntimeIoHelperSdk;

调用签名

text
createRuntimeIoHelperSdk(options: { event: DefaultRuntimeEventHelperOptions; resource: RuntimeResourceHelperDependencies; }): RuntimeIoHelperSdk

参数

参数类型必需说明
options{ event: DefaultRuntimeEventHelperOptions; resource: RuntimeResourceHelperDependencies; }必需参数;接受的值由类型列定义。

返回值

  • 类型: RuntimeIoHelperSdk
  • 说明: 返回值契约由上述类型定义。

DefaultRuntimeEventHelperOptions

Default Runtime Event Helper Options 接口,共包含 4 个公开字段或方法。

声明

text
export interface DefaultRuntimeEventHelperOptions {
    execution: RuntimeHelperExecutionScope;
    ids: RuntimeIdHelper;
    clock: {
        now(): Promise<string>;
    };
    port: RuntimeEventCommitPort;
}

契约成员

成员种类签名说明
clock属性clock: { now(): Promise<string>; }公开属性;类型、只读和可选状态以签名列为准。
execution属性execution: RuntimeHelperExecutionScope公开属性;类型、只读和可选状态以签名列为准。
ids属性ids: RuntimeIdHelper公开属性;类型、只读和可选状态以签名列为准。
port属性port: RuntimeEventCommitPort公开属性;类型、只读和可选状态以签名列为准。