Open Play SDK API başvurusu
    Preparing search index...

    Interface CommandHandle<Input, Output>

    Journal ile birlikte çalışan generic typed command handle.

    interface CommandHandle<Input, Output> {
        get canonicalRequest(): string;
        get fingerprint(): string;
        get idempotencyKey(): IdempotencyKey;
        get key(): IdempotencyKey;
        get operation(): string;
        get result(): Output | undefined;
        get scope(): JournalScope;
        get state(): CommandState;
        lookup(options?: RequestOptions): Promise<CommandLookupResult<Output>>;
        resume(options?: RequestOptions): Promise<Output>;
        send(options?: RequestOptions): Promise<Output>;
    }

    Type Parameters

    • Input
    • Output
    Index

    Accessors

    • get canonicalRequest(): string

      Encoded canonical request; secret içeriyorsa reference journal policy'si kullanılır.

      Returns string

    • get fingerprint(): string

      Secret taşımayan payload/version fingerprint'i.

      Returns string

    • get idempotencyKey(): IdempotencyKey

      Logical command key; retry ve recovery boyunca değişmez.

      Returns IdempotencyKey

    • get key(): IdempotencyKey

      idempotencyKey için kısa alias; yeni key üretmez.

      Returns IdempotencyKey

    • get operation(): string

      Operation descriptor adı.

      Returns string

    • get result(): Output | undefined

      Server yanıtı onaylandıysa typed receipt; aksi halde undefined.

      Returns Output | undefined

    • get state(): CommandState

      Current durable delivery state.

      Returns CommandState

    Methods

    • Belirsiz command'ın backend receipt durumunu typed olarak sorgular.

      Neden yazıldı: Response-loss sonrası uygulama pending, rejected, notFound ve retention expired ayrımını kendi HTTP status parser'ını yazarak yapmamalıdır. Yalnız committed sonucu response schema ile decode edilerek handle'ın terminal sonucuna yükseltilir. Kullanım: send() veya resume() UnknownOutcome döndürdükten sonra aynı immutable idempotency key ile çağrılır; bu method command göndermez.

      Parametreler

      • options: RequestOptions — lookup deadline'i ve caller iptal sinyali.

      Dönüş

      • CommandLookupResult<Output> — commit, bekleme, ret, bulunamama veya retention sona ermesi durumu.

      Hatalar

      • CrxError(CapabilityUnavailable) — descriptor'da result lookup yolu yoksa.
      • CrxError(Contract|Network|Timeout|Auth|Cancelled) — lookup transport'u veya committed response schema'sı doğrulanamazsa.

      Parameters

      Returns Promise<CommandLookupResult<Output>>

    • Command'ı aynı logical key ile gönderir veya uncertain sonucu güvenle recovery eder.

      Kullanım: prepare tekrar çağrılmaz; timeout/abort sonrası aynı handle send veya resume ile kullanılır. Payload, key ve expected version değişmez.

      Parameters

      • options: RequestOptions = {}

        Auth/transport deadline ve caller abort sinyali.

      Returns Promise<Output>

      Doğrulanmış plugin command sonucu.

      CrxError — unknown outcome, storage, HTTP veya schema reddi.