package Ġdev . pet us ka . mon ko . core Ċ Ċ import Ġcom . mongodb . reactiv est ream s . client . Mongo Clients Ċ import Ġdev . pet us ka . mon ko . core . ext . Mongo Client Ċ import Ġdev . pet us ka . mon ko . core . util . noop Ċ Ċ public Ġactual Ġsuspend Ġfun ĠMon ko Client ( ĊĠ Ġconnection String : ĠString , ĊĠ Ġconnection String JS : ĠString ?, ĊĠ Ġconnection String JVM : ĠString ?, ĊĠ Ġconnection String Native : ĠString ?, Ċ ): ĠMon ko Client Ġ{ ĊĠ Ġreturn ĠMongo Clients . create ( connectionString JVM Ġ?: Ġconnection String ). let (:: Mon ko Client Jvm ) Ċ } Ċ Ċ internal Ġclass ĠMon ko Client Jvm ( override Ġval Ġsource : ĠMongo Client ) Ġ: ĠMon ko Client Ġ{ ĊĠ Ġoverride Ġfun Ġclose () Ġ= Ġsource . close () ĊĊĠ Ġoverride Ġsuspend Ġfun Ġdatabase ( name : ĠString ): ĠMon ko Database Ġ= ĠMon ko Database Jvm ( this , Ġsource . get Database ( name )) Ċ } Ċ Ċ public Ġactual Ġsuspend Ġfun ĠMon ko Client . Companion . cleanup (): ĠUnit Ġ= Ġnoop Ċ