UNPKG

ionic-orm-2

Version:

Data-mapper ORM for Ionic WebSQL and SQLite

36 lines (35 loc) 1.46 kB
import { QueryRunner } from "./QueryRunner"; import { Driver } from "../driver/Driver"; /** * Represents functionality to provide a new query runners, and release old ones. * Also can provide always same query runner. */ export declare class QueryRunnerProvider { protected driver: Driver; protected useSingleQueryRunner: boolean; protected reusableQueryRunner: QueryRunner; /** * Indicates if this entity manager is released. * Entity manager can be released only if custom queryRunnerProvider is provided. * Once entity manager is released, its repositories and some other methods can't be used anymore. */ protected _isReleased: boolean; constructor(driver: Driver, useSingleQueryRunner?: boolean); readonly isReleased: boolean; /** * Provides a new query runner used to run repository queries. * If use useSingleQueryRunner mode is enabled then reusable query runner will be provided instead. */ provide(): Promise<QueryRunner>; /** * Query runner release logic extracted into separated methods intently, * to make possible to create a subclass with its own release query runner logic. * Note: release only query runners that provided by a provideQueryRunner() method. * This is important and by design. */ release(queryRunner: QueryRunner): Promise<void>; /** * Releases reused query runner. */ releaseReused(): Promise<void>; }