package Ġcom . big . image loader . data . remote čĊč Ċ import Ġcom . big . image loader . Build Config č Ċ import Ġcom . jak ew h art on . ret rofit 2 . adapter . rx java 2 . Rx Java 2 Call Adapter Factory č Ċ import Ġokhttp 3 . Cache č Ċ 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 č Ċ import Ġjava . io . File čĊč Ċ object ĠNetwork ing Ġ{ čĊčĊĠĠĠ Ġlateinit Ġvar ĠAPI _ VAL : ĠString čĊĠĠĠ Ġlateinit Ġvar ĠAPI _ HOST _ VAL : ĠString čĊčĊčĊĠĠĠ Ġfun Ġcreate Networking ( api Val : ĠString , Ġapi Host : String , ĠbaseUrl : ĠString , Ġcas che Dir : ĠFile , Ġcas che Size : ĠLong ): ĠNetwork Service Ġ{ čĊĠĠĠĠĠĠĠ ĠAPI _ VAL Ġ= Ġapi Val čĊĠĠĠĠĠĠĠ ĠAPI _ HOST _ VAL Ġ= Ġapi Host čĊĠĠĠĠĠĠĠ Ġreturn ĠRet rofit . Builder () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( baseUrl ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOk HttpClient . Builder () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. cache ( Cache ( cas che Dir , Ġcas che Size )) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( Http Logging Interceptor () čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlevel Ġ= Ġif Ġ( Build Config . DEBUG ) ĠHttp Logging Interceptor . Level . BODY čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĠHttp Logging Interceptor . Level . NONE čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Call Adapter Factory ( Rx Java 2 Call Adapter Factory . create ()) čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNetwork Service :: class . java čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) čĊĠĠĠ Ġ} čĊč Ċ }