ambiten / core / AmbitenClient
Class: AmbitenClient
Defined in: packages/core/src/lib-core/ambitenClient.ts:38
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:51
Parameters
_opts
Returns
AmbitenClient
Methods
client()
client(
ctx?):Promise<MongoClient>
Defined in: packages/core/src/lib-core/ambitenClient.ts:210
Parameters
ctx?
Returns
Promise<MongoClient>
Implementation of
close()
close():
Promise<void>
Defined in: packages/core/src/lib-core/ambitenClient.ts:639
Returns
Promise<void>
Implementation of
collection()
collection<
T>(collectionName,ctx?):Promise<Collection<T>>
Defined in: packages/core/src/lib-core/ambitenClient.ts:258
Type Parameters
T
T extends Document = Document
Parameters
collectionName
string
ctx?
Returns
Promise<Collection<T>>
Implementation of
connect()
connect():
Promise<AmbitenClient>
Defined in: packages/core/src/lib-core/ambitenClient.ts:195
Returns
Promise<AmbitenClient>
Implementation of
db()
db(
ctx?):Promise<Db>
Defined in: packages/core/src/lib-core/ambitenClient.ts:108
Resolution order:
- explicit ctx.db
- tenant-aware db resolution
- explicit ctx.dbName on base client
- mutable override dbName
- default dbName
Parameters
ctx?
Returns
Promise<Db>
Implementation of
disconnect()
disconnect():
Promise<void>
Defined in: packages/core/src/lib-core/ambitenClient.ts:651
Returns
Promise<void>
dropCollection()
dropCollection(
collectionName?,ctx?):Promise<void>
Defined in: packages/core/src/lib-core/ambitenClient.ts:580
Parameters
collectionName?
string
ctx?
Returns
Promise<void>
dropDatabase()
dropDatabase(
ctx?):Promise<boolean>
Defined in: packages/core/src/lib-core/ambitenClient.ts:618
Parameters
ctx?
Returns
Promise<boolean>
getClusterInfo()
getClusterInfo():
Promise<ClusterInfo>
Defined in: packages/core/src/lib-core/ambitenClient.ts:279
Returns
Promise<ClusterInfo>
getCollection()
getCollection<
T>(collectionName,ctx?):Promise<Collection<T>>
Defined in: packages/core/src/lib-core/ambitenClient.ts:266
Type Parameters
T
T extends Document
Parameters
collectionName
string
ctx?
Returns
Promise<Collection<T>>
isConnected()
isConnected():
boolean
Defined in: packages/core/src/lib-core/ambitenClient.ts:655
Returns
boolean
resetDatabase()
resetDatabase():
void
Defined in: packages/core/src/lib-core/ambitenClient.ts:571
Returns
void
startSession()
startSession(
ctx?):Promise<ClientSession>
Defined in: packages/core/src/lib-core/ambitenClient.ts:575
Parameters
ctx?
Returns
Promise<ClientSession>
Implementation of
useCollection()
useCollection(
collectionName):Promise<Collection<any>>
Defined in: packages/core/src/lib-core/ambitenClient.ts:236
Parameters
collectionName
string
Returns
Promise<Collection<any>>
useDatabase()
useDatabase(
dbName):Promise<{client:MongoClient;db:Db; }>
Defined in: packages/core/src/lib-core/ambitenClient.ts:340
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:163
Parameters
uri
string
Returns
void
withContext()
withContext<
R>(context,callback):Promise<R>
Defined in: packages/core/src/lib-core/ambitenClient.ts:460
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:354
Parameters
dbName
string
Returns
withScope()
withScope(
scope):BootstrapClient
Defined in: packages/core/src/lib-core/ambitenClient.ts:527
Parameters
scope
dbName?
string
tenantId?
string
Returns
withTenant()
withTenant(
tenantId):BootstrapClient
Defined in: packages/core/src/lib-core/ambitenClient.ts:499
Parameters
tenantId
string
Returns
db()
staticdb(ctx?):Promise<Db>
Defined in: packages/core/src/lib-core/ambitenClient.ts:159
Parameters
ctx?
Returns
Promise<Db>
handleLogBatch()
statichandleLogBatch(batch,transporter?):Promise<void>
Defined in: packages/core/src/lib-core/ambitenClient.ts:669
Parameters
batch
(TopologyOpeningEvent | TopologyClosedEvent)[]
transporter?
Pick<Transporter, "write">
Returns
Promise<void>
handleTopologyEvent()
statichandleTopologyEvent(event):void
Defined in: packages/core/src/lib-core/ambitenClient.ts:659
Parameters
event
TopologyOpeningEvent | TopologyClosedEvent
Returns
void
init()
staticinit(opts?):AmbitenClient
Defined in: packages/core/src/lib-core/ambitenClient.ts:69
Parameters
opts?
Partial<AmbitenClientConfig>
Returns
AmbitenClient
resolveRuntime()
staticresolveRuntime():Promise<{db:Db;session:ClientSession|undefined; }>
Defined in: packages/core/src/lib-core/ambitenClient.ts:316
Resolves database + session + runtime binding
Returns
Promise<{ db: Db; session: ClientSession | undefined; }>
