package Ġt api oca . t api oc ase gment ation Ċ Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . util . Base 6 4 Ċ import Ġandroid . util . Log Ċ import Ġokhttp 3 .* Ċ import Ġokhttp 3 . MediaType . Companion . to MediaType OrNull Ċ import Ġokhttp 3 . RequestBody . Companion . as RequestBody Ċ import Ġokhttp 3 . RequestBody . Companion . to RequestBody Ċ import Ġjava . io . ByteArray OutputStream Ċ import Ġjava . io . File Ċ import Ġjava . io . IOException Ċ import Ġjava . nio . ByteBuffer Ċ import Ġandroid . graphics . Bitmap Factory ĊĊĊ Ċ object ĠHttp Util Ġ{ ĊĠĠĠ Ġprivate Ġval Ġclient Ġ= ĠOk HttpClient () ĊĊĠĠĠ Ġfun Ġhttp Get ( url : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠRequest . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. url ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse : ĠResponse ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Ġ= Ġclient . new Call ( request ). execute () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIOException () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġresponse . body ?. string () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget T api oca Image ( url : ĠString , Ġbitmap : ĠBitmap ): ĠBitmap Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstream Ġ= ĠByteArrayOutputStream () ĊĠĠĠĠĠĠĠ Ġbitmap . compress ( Bitmap . Compress Format . PNG , Ġ 0 , Ġstream ) ĊĠĠĠĠĠĠĠ Ġval ĠbyteArray Ġ= Ġstream . toByteArray () ĊĠĠĠĠĠĠĠ Ġval Ġencoded Image Ġ= ĠBase 6 4 . encode ToString ( byteArray , ĠBase 6 4 . DEFAULT ) ĊĊĠĠĠĠĠĠĠ Ġval Ġrequest Body Ġ= Ġencoded Image . to RequestBody (" plain / text ". to MediaType OrNull ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠRequest ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. url ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. post ( request Body ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĊĠĠĠĠĠĠĠ Ġval Ġresponse : ĠResponse ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Ġ= Ġclient . new Call ( request ). execute () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . d (" http connection Ġsuccess ", Ġresponse . body ?. string ()) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . e (" http connection Ġerror ", e . message Ġ+ Ġe . cause ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIOException () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġj pg arr Ġ= ĠBase 6 4 . decode ( encoded Image , ĠBase 6 4 . DEFAULT ) ĊĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĠBitmap Factory . decode ByteArray ( jpg arr , Ġ 0 , Ġj pg arr . size ) ĊĠĠĠĠĠĠĠ Ġreturn Ġbitmap ĊĠĠĠ Ġ} Ċ Ċ // ĠĠĠ Ġfun Ġhttp Post ( url : ĠString , Ġbitmap : ĠBitmap ): ĠString Ġ{ Ċ // ĠĠĠĠĠĠĠ ĠRequest Body . create ( MediaType . get ()) Ċ // ĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠRequest . Builder () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. url ( url ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. post () Ċ // ĠĠĠ Ġ} Ċ Ċ } Ċ