/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 Ċ Ġ* Ċ Ġ* ĠĠĠĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* ĠĠĠĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠĠĠĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠĠĠĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* ĠĠĠĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠĠĠĠ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠĠĠĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* ĠĠĠĠ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ /* Ċ Ġ* ĠThis ĠSource ĠCode ĠForm Ġis Ġsubject Ġto Ġthe Ġterms Ġof Ġthe ĠMozilla ĠPublic Ċ Ġ* ĠLicense , Ġv . Ġ 2 . 0 . ĠIf Ġa Ġcopy Ġof Ġthe ĠM PL Ġwas Ġnot Ġdistributed Ġwith Ġthis Ċ Ġ* Ġfile , ĠYou Ġcan Ġobtain Ġone Ġat Ġhttp :// mozilla . org / MPL / 2 . 0 /. Ċ Ġ*/ Ċ Ċ package Ġorg . jel ly fin . api Ċ Ċ import Ġio . ktor . client . HttpClient Config Ċ import Ġio . ktor . client . features . default Request Ċ import Ġio . ktor . client . request . HttpRequest Builder Ċ import Ġio . ktor . client . request . header Ċ import Ġio . ktor . http . URL Builder Ċ import Ġio . ktor . http . Url Ċ import Ġio . ktor . http . take From ĊĊ Ċ internal Ġfun ĠHttpRequest Builder . add AuthToken ( platform : ĠPlatform , Ġtoken : ĠString ?) Ġ{ ĊĠĠĠ Ġval Ġparams Ġ= ĠArrayList < String >() ĊĠĠĠ Ġparams . add (" Client =\" ${ platform . client }\" ") ĊĠĠĠ Ġparams . add (" Device =\" ${ platform . device Name }\" ") ĊĠĠĠ Ġparams . add (" DeviceId =\" ${ platform . deviceId }\" ") ĊĠĠĠ Ġparams . add (" Version =\" ${ platform . client Version }\" ") ĊĠĠĠ Ġif Ġ( token Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġparams . add (" Token =\" $ token \" ") ĊĠĠĠ Ġ} ĊĠĠĠ Ġheader (" X - Em by - Authorization ", Ġ" Media Browser Ġ${ params . join ToString (", Ġ" )} ") Ċ } ĊĊ Ċ internal Ġfun ĠHttpClient Config <* >. configure Default ( basePath : ĠString , Ġblock : Ġ( HttpRequest Builder . () Ġ-> ĠUnit )? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġval Ġbase Ġ= ĠUrl ( basePath ) ĊĊĠĠĠ Ġdefault Request Ġ{ ĊĠĠĠĠĠĠĠ Ġurl . take From ( URL Builder (). take From ( base ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġencoded Path Ġ+= Ġurl . encoded Path ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġheader (" Accept ", Ġ" application / json ; Profile =\" Camel Case \" ") ĊĠĠĠĠĠĠĠ Ġblock ?. invoke ( this ) ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ internal Ġfun ĠHttpRequest Builder . path ( p : ĠString ) Ġ{ ĊĠĠĠ Ġurl Ġ{ ĊĠĠĠĠĠĠĠ Ġpath ( p ) ĊĠĠĠ Ġ} Ċ } Ċ