UNPKG

@inversifyjs/core

Version:

InversifyJs core package

26 lines 1.25 kB
import { CacheBindingInvalidation } from '../models/CacheBindingInvalidation'; import { GetPlanOptions } from '../models/GetPlanOptions'; import { NonCachedServiceNodeContext } from '../models/NonCachedServiceNodeContext'; import { PlanResult } from '../models/PlanResult'; import { PlanServiceNode } from '../models/PlanServiceNode'; /** * Service to cache plans. * * This class is used to cache plans and to notify PlanService subscribers when the cache is cleared. * The cache should be cleared when a new binding is registered or when a binding is unregistered. * * Subscribers are supposed to be plan services from child containers. * * Ancestor binding constraints are the reason to avoid reusing plans from plan children nodes. */ export declare class PlanResultCacheService { #private; constructor(); clearCache(): void; get(options: GetPlanOptions): PlanResult | undefined; invalidateServiceBinding(invalidation: CacheBindingInvalidation): void; set(options: GetPlanOptions, planResult: PlanResult): void; setNonCachedServiceNode(node: PlanServiceNode, context: NonCachedServiceNodeContext): void; subscribe(subscriber: PlanResultCacheService): void; } //# sourceMappingURL=PlanResultCacheService.d.ts.map