package Ġonline . sen p ai . we bo . module Ċ Ċ import Ġcom . mongodb . Mongo Client Settings Ċ import Ġcom . mongodb . Mongo Credential Ċ import Ġorg . k oin . core . module . Module Ċ import Ġorg . k oin . dsl . module Ċ import Ġorg . lit ote . km ongo . coroutine . Coroutine Client Ċ import Ġorg . lit ote . km ongo . coroutine . coroutine Ċ import Ġorg . lit ote . km ongo . reactiv est ream s . K Mongo Ċ Ċ private Ġconst Ġval ĠJDBC _ MAX _ POOL _ SIZE Ġ= Ġ 2 0 Ċ Ċ val Ġdb Connection Module : ĠModule Ġ= Ġmodule ( createdAt Start Ġ= Ġtrue ) Ġ{ ĊĠĠĠ Ġ/* single < Hikari DataSource > Ġ{ ĊĠĠĠĠĠĠĠ ĠH ikari DataSource ( HikariConfig (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjdbc Url Ġ= Ġ" jdbc : postgresql :// localhost : 5 4 3 2 /" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġusername Ġ= Ġ" postgres " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpassword Ġ= Ġ" dev " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmaximum PoolSize Ġ= ĠJDBC _ MAX _ POOL _ SIZE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Auto Commit Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Isolation Ġ= Ġ" TRANSACTION _ REPEAT ABLE _ READ " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalidate () ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ}*/ ĊĠĠĠ Ġsingle < Coroutine Client > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsettings : ĠMongo Client Settings Ġ= ĠMongo Client Settings ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcredential ( Mongo Credential . create Sc ram Sha 1 Credential (" mongo ", Ġ" admin ", Ġ" mongo ". toCharArray ())) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ ĠK Mongo . create Client ( settings ). coroutine ĊĠĠĠ Ġ} Ċ } Ċ