API Reference

PromiseProxyFactoryclass

Creates promise observers that emit resolved values through promise-accessor caching.

Overview

Promise proxy factory and change contracts for resolved/rejected transitions.

Import

import { PromiseProxyFactory } from '@rs-x/state-manager';

Example

import { InjectionContainer } from '@rs-x/core';
import {
  RsXStateManagerInjectionTokens,
  RsXStateManagerModule,
  type IPromiseProxyFactory,
} from '@rs-x/state-manager';

await InjectionContainer.load(RsXStateManagerModule);

// Resolve from DI container (do not construct this service directly).
const promiseProxy = InjectionContainer.get<IPromiseProxyFactory>(
  RsXStateManagerInjectionTokens.IPromiseProxyFactory,
);
console.log(promiseProxy);

Constructor injection example

import { Inject } from '@rs-x/core';
import {
  RsXStateManagerInjectionTokens,
  type IPromiseProxyFactory,
} from '@rs-x/state-manager';

class MyConsumer {
  constructor(
    @Inject(RsXStateManagerInjectionTokens.IPromiseProxyFactory)
    private readonly dependency: IPromiseProxyFactory,
  ) {}
}

Members

5 members in this class.

constructor
constructorpublic
constructor(
  @Inject(RsXCoreInjectionTokens.IPromiseAccessor) private readonly _promiseAccessor: IPromiseAccessor
)

Parameters

NameTypeRequired
_promiseAccessorIPromiseAccessorrequired
getId
methodpublic
public override getId(data: IPromiseProxyData): Promise<unknown>

Parameters

NameTypeRequired
dataIPromiseProxyDatarequired

Returns

Promise<unknown>

createId
methodprotected
protected override createId(data: IPromiseProxyData): Promise<unknown>

Parameters

NameTypeRequired
dataIPromiseProxyDatarequired

Returns

Promise<unknown>

createInstance
methodprotected
protected override createInstance(
  data: IPromiseProxyData,
  id: Promise<unknown>
): IPromiseObserverProxyPair

Parameters

NameTypeRequired
dataIPromiseProxyDatarequired
idPromise<unknown>required
releaseInstance
methodprotected
protected override releaseInstance( promiseObserverWithProxy: IPromiseObserverProxyPair): void

Parameters

NameTypeRequired
promiseObserverWithProxyIPromiseObserverProxyPairrequired

Returns

void