package Ġcom . jit ty andi yan . shared . core . network Ċ Ċ import Ġio . ktor . client .* Ċ import Ġio . ktor . client . features . json .* Ċ import Ġio . ktor . client . features . json . serializer .* Ċ import Ġio . ktor . client . features . logging .* Ċ import Ġio . ktor . client . request .* Ċ import Ġio . ktor . client . utils .* Ċ import Ġio . ktor . http .* Ċ Ċ class ĠHTTP Helper Ġ{ ĊĊĠĠĠ Ġval Ġclient Ġ= ĠHttpClient Ġ{ ĊĠĠĠĠĠĠĠ Ġinstall ( Json Feature ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserializer Ġ= ĠKotlin x Serializer () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġinstall ( Logging ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger Ġ= Ġobject Ġ: ĠLogger Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġlog ( message : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" HTTP Helper ĠNetwork Ġ> Ġ$ message ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlevel Ġ= ĠLogLevel . INFO ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsuspend Ġinline Ġfun Ġ< re ified ĠT > Ġdo Get ( ĊĠĠĠĠĠĠĠĠ Ġurl Builder : ĠURL Builder . ()-> ĠUnit ĊĠĠĠ Ġ): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . get Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġurl . apply ( url Builder ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsuspend Ġinline Ġfun Ġ< re ified ĠT > Ġdo Post ( ĊĠĠĠĠĠĠĠ Ġrequest Body : ĠAny Ġ= ĠEmpty Content , ĊĠĠĠĠĠĠĠ Ġurl Builder : ĠURL Builder . ()-> ĠUnit ĊĠĠĠ Ġ): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . post Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . body = request Body ĊĠĠĠĠĠĠĠĠĠĠĠ Ġurl . apply ( url Builder ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠcontentType ( ContentType . Application . Json ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }