package Ġcom . alg ol ia . instant search . insights . internal . data . dist ant Ċ Ċ import Ġcom . alg ol ia . instant search . insights . internal . event . Event Response Ċ import Ġcom . alg ol ia . instant search . insights . internal . logging . Insights Logger Ċ import Ġcom . alg ol ia . search . client . Client Insights Ċ import Ġcom . alg ol ia . search . model . insights . Insights Event Ċ import Ġio . ktor . client . features . Client RequestException Ċ import Ġio . ktor . http . is Success Ċ import Ġio . ktor . utils . io . read UTF 8 Line Ċ Ċ internal Ġclass ĠInsights Http Repository ( ĊĠĠĠ Ġprivate Ġval Ġclient Insights : ĠClient Insights , Ċ ) Ġ: ĠInsights Dist ant Repository Ġ{ ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġsend ( event : ĠInsights Event ): ĠEvent Response Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġ( code : ĠInt , Ġmessage : ĠString ) Ġ= Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġclient Insights . send Event ( event ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmessage Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse . status . is Success () Ġ-> Ġ" Sync Ġsucceeded Ġfor Ġ$ event .\ "" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġresponse . content . read UTF 8 Line (). or Empty () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresponse . status . value Ġto Ġmessage ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( exception : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstatus Ġ= Ġ( exception Ġas ? ĠClient RequestException )?. response ?. status ?. value Ġ?: Ġ- 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġto Ġexception . message . or Empty () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠInsights Logger . log ( event . index Name , Ġmessage ) ĊĠĠĠĠĠĠĠ Ġreturn ĠEvent Response ( code Ġ= Ġcode , Ġevent Ġ= Ġevent ) ĊĠĠĠ Ġ} Ċ } Ċ