package Ġcom . over inet . network Ċ Ċ import Ġcom . over inet . MOV IE _ LIST _ BASE _ PATH Ċ import Ġcom . over inet . MOV IE _ SEARCH _ BASE _ PATH Ċ import Ġcom . over inet . model . Movie Ċ import Ġcom . over inet . model . Movies Response Ċ import Ġio . ktor . client . HttpClient Ċ import Ġio . ktor . client . request . get Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġkotlinx . coroutines . Global Scope Ċ import Ġkotlinx . coroutines . launch Ċ import Ġkotlinx . serialization . json . Json Ċ import Ġkotlinx . serialization . json . Json Configuration ĊĊ Ċ class ĠSimple Movie Client { ĊĊĠĠĠ Ġcompanion Ġobject { ĊĠĠĠĠĠĠĠ Ġvar Ġparser Config Ġ= ĠJson Configuration ( ignore Unknown Keys Ġ= Ġtrue , Ġis Len ient Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġval Ġclient Ġ= ĠHttpClient () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsearch Film ( query : ĠString , Ġcallback : Ġ( List < Movie >) Ġ-> ĠUnit ) Ġ{ ĊĊĠĠĠĠĠĠĠ ĠGlobal Scope . launch ( Dispatch ers . Default ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġclient . get < String >( MOV IE _ SEARCH _ BASE _ PATH Ġ+ Ġ"& query =$ query ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmovies Response Ġ= ĠJson ( parser Config ). fromJson ( Movies Response . serializer (), ĠJson ( parser Config ). parse Json ( data )) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback ( movies Response . results ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Fil ms ( callback : Ġ( List < Movie >) Ġ-> ĠUnit ) Ġ Ġ{ ĊĊĊĠĠĠĠĠĠĠ ĠGlobal Scope . launch ( Dispatch ers . Default ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġclient . get < String >( MOV IE _ LIST _ BASE _ PATH ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmovies Response Ġ= ĠJson ( parser Config ). fromJson ( Movies Response . serializer (), ĠJson ( parser Config ). parse Json ( data )) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback ( movies Response . results ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ