package Ġcom . tu gr ul bo . kotlin flight app . network Ċ Ċ import Ġandroid . icu . util . TimeUnit Ċ import Ġcom . tu gr ul bo . kotlin flight app . Build Config Ċ import Ġcom . tu gr ul bo . kotlin flight app . model . Flight Data Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . logging . Http Logging Interceptor Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . converter . gson . Gson Converter Factory Ċ Ċ class ĠNetwork Helper Ġ{ ĊĊĠĠĠ Ġvar Ġfl ights Data : ĠGet Fl ights ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval ĠbaseUrl Ġ= Ġ" http :// api . av iation stack . com / v 1 /" ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġretrofit Ġ= ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( baseUrl ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( getClient ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġfl ights Data Ġ= Ġretrofit . create ( Get Fl ights :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠgetClient (): ĠOk HttpClient Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠhttpClient Ġ= ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠ ĠhttpClient . connect Timeout ( 6 0 , Ġjava . util . concurrent . TimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠ ĠhttpClient . read Timeout ( 6 0 , Ġjava . util . concurrent . TimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠ ĠhttpClient . write Timeout ( 6 0 , Ġjava . util . concurrent . TimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠ ĠhttpClient . add Interceptor ( create Http Logging Interceptor ( Build Config . DEBUG )) ĊĠĠĠĠĠĠĠ Ġreturn ĠhttpClient . build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcreate Http Logging Interceptor ( debug Mode : ĠBoolean ): ĠHttp Logging Interceptor Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġhttp Logging Interceptor Ġ= ĠHttp Logging Interceptor () ĊĠĠĠĠĠĠĠ Ġif Ġ( debug Mode ) Ġhttp Logging Interceptor . level Ġ= ĠHttp Logging Interceptor . Level . BODY ĊĠĠĠĠĠĠĠ Ġelse Ġhttp Logging Interceptor . level Ġ= ĠHttp Logging Interceptor . Level . NONE ĊĠĠĠĠĠĠĠ Ġreturn Ġhttp Logging Interceptor ĊĠĠĠ Ġ} Ċ }