Skip to content

ambiten


ambiten / core/src / AmbitenClient

Class: AmbitenClient ​

Defined in: packages/core/src/lib-core/ambitenClient.ts:39

AmbitenClient is a MongoDB client wrapper that provides a simplified interface for connecting to and interacting with MongoDB databases.

Implements ​

Constructors ​

Constructor ​

new AmbitenClient(_opts): AmbitenClient

Defined in: packages/core/src/lib-core/ambitenClient.ts:52

Parameters ​

_opts ​

AmbitenClientConfig

Returns ​

AmbitenClient

Methods ​

client() ​

client(ctx?): Promise<MongoClient>

Defined in: packages/core/src/lib-core/ambitenClient.ts:238

Parameters ​

ctx? ​

ModelContext

Returns ​

Promise<MongoClient>

Implementation of ​

BootstrapClient.client


close() ​

close(): Promise<void>

Defined in: packages/core/src/lib-core/ambitenClient.ts:667

Returns ​

Promise<void>

Implementation of ​

BootstrapClient.close


collection() ​

collection<T>(collectionName, ctx?): Promise<Collection<T>>

Defined in: packages/core/src/lib-core/ambitenClient.ts:286

Type Parameters ​

T ​

T extends Document = Document

Parameters ​

collectionName ​

string

ctx? ​

ModelContext

Returns ​

Promise<Collection<T>>

Implementation of ​

BootstrapClient.collection


connect() ​

connect(): Promise<AmbitenClient>

Defined in: packages/core/src/lib-core/ambitenClient.ts:223

Returns ​

Promise<AmbitenClient>

Implementation of ​

BootstrapClient.connect


db() ​

db(ctx?): Promise<Db>

Defined in: packages/core/src/lib-core/ambitenClient.ts:121

Resolution order:

  1. explicit ctx.db
  2. tenant-aware db resolution
  3. explicit ctx.dbName on base client
  4. mutable override dbName
  5. default dbName

Parameters ​

ctx? ​

ModelContext

Returns ​

Promise<Db>

Implementation of ​

BootstrapClient.db


disconnect() ​

disconnect(): Promise<void>

Defined in: packages/core/src/lib-core/ambitenClient.ts:679

Returns ​

Promise<void>


dropCollection() ​

dropCollection(collectionName?, ctx?): Promise<void>

Defined in: packages/core/src/lib-core/ambitenClient.ts:608

Parameters ​

collectionName? ​

string

ctx? ​

ModelContext

Returns ​

Promise<void>


dropDatabase() ​

dropDatabase(ctx?): Promise<boolean>

Defined in: packages/core/src/lib-core/ambitenClient.ts:646

Parameters ​

ctx? ​

ModelContext

Returns ​

Promise<boolean>


getClusterInfo() ​

getClusterInfo(): Promise<ClusterInfo>

Defined in: packages/core/src/lib-core/ambitenClient.ts:307

Returns ​

Promise<ClusterInfo>


getCollection() ​

getCollection<T>(collectionName, ctx?): Promise<Collection<T>>

Defined in: packages/core/src/lib-core/ambitenClient.ts:294

Type Parameters ​

T ​

T extends Document

Parameters ​

collectionName ​

string

ctx? ​

ModelContext

Returns ​

Promise<Collection<T>>


isConnected() ​

isConnected(): boolean

Defined in: packages/core/src/lib-core/ambitenClient.ts:683

Returns ​

boolean


resetDatabase() ​

resetDatabase(): void

Defined in: packages/core/src/lib-core/ambitenClient.ts:599

Returns ​

void


startSession() ​

startSession(ctx?): Promise<ClientSession>

Defined in: packages/core/src/lib-core/ambitenClient.ts:603

Parameters ​

ctx? ​

ModelContext

Returns ​

Promise<ClientSession>

Implementation of ​

BootstrapClient.startSession


useCollection() ​

useCollection(collectionName): Promise<Collection<any>>

Defined in: packages/core/src/lib-core/ambitenClient.ts:264

Parameters ​

collectionName ​

string

Returns ​

Promise<Collection<any>>


useDatabase() ​

useDatabase(dbName): Promise<{ client: MongoClient; db: Db; }>

Defined in: packages/core/src/lib-core/ambitenClient.ts:368

Mutable legacy helper. Prefer withDatabase() or withScope() in request-safe flows.

Parameters ​

dbName ​

string

Returns ​

Promise<{ client: MongoClient; db: Db; }>


validateUri() ​

validateUri(uri): void

Defined in: packages/core/src/lib-core/ambitenClient.ts:191

Parameters ​

uri ​

string

Returns ​

void


withContext() ​

withContext<R>(context, callback): Promise<R>

Defined in: packages/core/src/lib-core/ambitenClient.ts:488

Type Parameters ​

R ​

R

Parameters ​

context ​
collectionName? ​

string

dbName? ​

string

requestId? ​

string

session? ​

ClientSession

tenantId? ​

string

callback ​

() => Promise<R>

Returns ​

Promise<R>


withDatabase() ​

withDatabase(dbName): BootstrapClient

Defined in: packages/core/src/lib-core/ambitenClient.ts:382

Parameters ​

dbName ​

string

Returns ​

BootstrapClient


withScope() ​

withScope(scope): BootstrapClient

Defined in: packages/core/src/lib-core/ambitenClient.ts:555

Parameters ​

scope ​
dbName? ​

string

tenantId? ​

string

Returns ​

BootstrapClient


withTenant() ​

withTenant(tenantId): BootstrapClient

Defined in: packages/core/src/lib-core/ambitenClient.ts:527

Parameters ​

tenantId ​

string

Returns ​

BootstrapClient


db() ​

static db(ctx?): Promise<Db>

Defined in: packages/core/src/lib-core/ambitenClient.ts:187

Parameters ​

ctx? ​

ModelContext

Returns ​

Promise<Db>


handleLogBatch() ​

static handleLogBatch(batch, transporter?): Promise<void>

Defined in: packages/core/src/lib-core/ambitenClient.ts:697

Parameters ​

batch ​

(TopologyOpeningEvent | TopologyClosedEvent)[]

transporter? ​

Pick<Transporter, "write">

Returns ​

Promise<void>


handleTopologyEvent() ​

static handleTopologyEvent(event): void

Defined in: packages/core/src/lib-core/ambitenClient.ts:687

Parameters ​

event ​

TopologyOpeningEvent | TopologyClosedEvent

Returns ​

void


init() ​

static init(opts?): AmbitenClient

Defined in: packages/core/src/lib-core/ambitenClient.ts:70

Parameters ​

opts? ​

Partial<AmbitenClientConfig>

Returns ​

AmbitenClient


resolveRuntime() ​

static resolveRuntime(): Promise<{ db: Db; session: ClientSession | undefined; }>

Defined in: packages/core/src/lib-core/ambitenClient.ts:344

Resolves database + session + runtime binding

Returns ​

Promise<{ db: Db; session: ClientSession | undefined; }>

Context-aware execution infrastructure for multi-tenant systems.