package Ġno . nav . s bl . ds op . op ps lag . kode ver k Ċ Ċ import Ġio . ktor . client . HttpClient Ċ import Ġio . ktor . client . call . call Ċ import Ġio . ktor . client . call . receive Ċ import Ġio . ktor . client . features . default Request Ċ import Ġio . ktor . client . features . json . Json Feature Ċ import Ġio . ktor . client . request . header Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġmu . K Logging Ċ import Ġno . nav . s bl . ds op . api . CON SUM ER _ ID Ċ import Ġno . nav . s bl . ds op . api . Environment Ċ import Ġno . nav . s bl . ds op . api . HTTP _ STATUS _ CODES _ 2 XX Ċ import Ġno . nav . s bl . ds op . api . dto . K ode ver k Ċ Ċ fun Ġget K ode ver k ( authorization : ĠString , Ġk ode : ĠString , Ġtest Client : ĠHttpClient ? Ġ= Ġnull , Ġenvironment : ĠEnvironment ): ĠString Ġ= Ġrun Blocking Ġ{ ĊĠĠĠ Ġval Ġspr a ak Ġ= Ġ" nb " ĊĠĠĠ Ġval Ġk ode ver k Client Ġ= Ġtest Client Ġ?: Ġ ĠHttpClient () Ġ{ ĊĠĠĠĠĠĠĠ Ġdefault Request Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader ( environment . apiKey Username , Ġenvironment . ds op Api K ode ver k RestApi Api key Password ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader (" Authorization ", Ġauthorization ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader (" Nav - Call - Id ", Ġ" ds op - api - tem ak ode Ġ$ kode ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġheader (" Nav - Consumer - Id ", ĠCON SUM ER _ ID ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġinstall ( Json Feature ) ĊĠĠĠĠĠĠĠ Ġexpect Success Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġk ode ver k Result Ġ= Ġk ode ver k Client . call ( environment . kode ver k RestApi Url ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. plus (" v 1 / kode ver k / T ema / k oder / bet yd ning er ? ek sk lu der U gy l di ge = true & sp ra ak =$ sp ra ak ")) ĊĠĠĠ Ġk ode ver k Client . close () ĊĠĠĠ Ġif Ġ( HTTP _ STATUS _ CODES _ 2 XX . contains ( kode ver k Result . response . status . value )) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġk ode ver k Ġ= Ġk ode ver k Result . response . receive < K ode ver k >() ĊĠĠĠĠĠĠĠ Ġk ode ver k . bet yd ning er [ kode ]?. get ( 0 )?. bes k riv el ser ?. get ( sp ra ak )?. term Ġ?: Ġk ode ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ ĠK Logging (). logger . error (" Opp sl ag Ġmot ĠK ODE VER K ĠpÃ¥ Ġtem ak ode Ġ$ kode Ġfe ilet . Ġ" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. plus ( kode ver k Result . response . status . value ). plus (" Ġ"). plus ( kode ver k Result . response . receive < String > ())) ĊĠĠĠĠĠĠĠ Ġk ode ĊĠĠĠ Ġ} Ċ }