package Ġscanner . config Ċ Ċ import Ġio . ktor . client .* Ċ import Ġio . ktor . client . engine . c io .* Ċ import Ġio . ktor . client . features .* Ċ import Ġio . ktor . client . features . auth .* Ċ import Ġio . ktor . client . features . auth . providers .* Ċ import Ġio . ktor . client . features . json .* Ċ import Ġio . ktor . client . features . json . serializer .* Ċ import Ġio . ktor . client . request .* Ċ import Ġio . ktor . http .* Ċ import Ġorg . kode in . di .* Ċ import Ġscanner . client .* Ċ import Ġscanner . domain .* Ċ import Ġscanner . domain . Repository .* Ċ import Ġscanner . processor .* Ċ import Ġscanner . service .* Ċ import Ġscanner . util .* ĊĊ Ċ fun ĠHttpClient Config < C IO Engine Config >. base Config () Ġ{ ĊĠ Ġval Ġtimeout Ġ= Ġ 1 5 0 _ 0 0 0 L ĊĠ Ġengine Ġ{ ĊĠĠĠ Ġrequest Timeout Ġ= Ġtimeout ĊĠ Ġ} ĊĠ Ġdefault Request Ġ{ ĊĠĠĠ ĠcontentType ( ContentType . Application . Json ) ĊĠĠĠ Ġaccept ( ContentType . Application . Json ) ĊĠĠĠ Ġaccept ( ContentType . Text . Html ) ĊĠ Ġ} ĊĠ Ġinstall ( Http Timeout ) Ġ{ ĊĠĠĠ Ġrequest Timeout Millis Ġ= Ġtimeout ĊĠĠĠ Ġconnect Timeout Millis Ġ= Ġtimeout ĊĠĠĠ Ġsocket Timeout Millis Ġ= Ġtimeout ĊĠ Ġ} ĊĠ Ġinstall ( Json Feature ) Ġ{ ĊĠĠĠ Ġserializer Ġ= ĠKotlin x Serializer ( pretty Json ) ĊĠ Ġ} Ċ } Ċ Ċ val Ġdi Ġ= ĠDI Ġ{ ĊĠ ĠRepository . values (). forEach Ġ{ Ġrepo Ġ-> ĊĠĠĠ Ġbind ( repo . alias ) Ġfrom Ġprovider Ġ{ Ġwith ( repo ) Ġ{ Ġclient ( url ) Ġ} Ġ} ĊĠĠĠ Ġbind < Maven Scanner Service < *> >( repo . alias ) Ġwith Ġsingleton Ġ{ ĠMaven Scanner ServiceImpl ( instance ( repo . alias ), Ġinstance (), Ġinstance ()) Ġ} ĊĠ Ġ} ĊĠĠĊĠ Ġbind () Ġfrom Ġsingleton Ġ{ ĊĠĠĠ Ġkotlinx . serialization . json . Json Ġ{ ĊĠĠĠĠĠ Ġpretty Print Ġ= Ġtrue ĊĠĠĠĠĠ Ġignore Unknown Keys Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĠ Ġbind () Ġfrom Ġsingleton Ġ{ ĠP om Processor () Ġ} ĊĠ Ġbind () Ġfrom Ġsingleton Ġ{ ĠGradle Module Processor () Ġ} ĊĠĠĊĠ Ġbind () Ġfrom Ġprovider Ġ{ ĠHttpClient ( C IO , ĠHttpClient Config < C IO Engine Config >:: base Config ) Ġ} ĊĠ Ġbind (" k amp ") Ġfrom Ġprovider Ġ{ ĊĠĠĠ ĠHttpClient ( C IO ) Ġ{ ĊĠĠĠĠĠ Ġbase Config () ĊĠĠĠĠĠ Ġinstall ( Auth ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbasic Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġusername Ġ= ĠPrivate Env . ADMIN _ USER ĊĠĠĠĠĠĠĠĠĠ Ġpassword Ġ= ĠPrivate Env . ADMIN _ PASSWORD ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ