package Ġorg . simple . clin ic . di Ċ Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . logging . Http Logging Interceptor Ċ import Ġorg . simple . clin ic . Build Config Ċ import Ġorg . simple . clin ic . analytics . Network Analytics Interceptor Ċ import Ġorg . simple . clin ic . user . LoggedIn User Http Interceptor Ċ import Ġorg . simple . clin ic . util . Instant M oshi Adapter Ċ import Ġorg . simple . clin ic . util . LocalDate M oshi Adapter Ċ import Ġorg . simple . clin ic . util . Uuid M oshi Adapter Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . adapter . rx java 2 . Rx Java 2 Call Adapter Factory Ċ import Ġretrofit 2 . converter . mos hi . M oshi Converter Factory Ċ Ċ @ Module Ċ class ĠNetwork Module Ġ{ ĊĊĠ Ġ@ Provides ĊĠ Ġfun Ġm oshi (): ĠM oshi Ġ{ ĊĠĠĠ Ġreturn ĠM oshi . Builder () ĊĠĠĠĠĠĠĠ Ġ. add ( Instant M oshi Adapter ()) ĊĠĠĠĠĠĠĠ Ġ. add ( LocalDate M oshi Adapter ()) ĊĠĠĠĠĠĠĠ Ġ. add ( Uuid M oshi Adapter ()) ĊĠĠĠĠĠĠĠ Ġ. build () ĊĠ Ġ} ĊĊĠ Ġ@ Provides ĊĠ Ġfun Ġretrofit Builder ( mos hi : ĠM oshi , Ġlogged In Interceptor : ĠLog ged In User Http Interceptor ): ĠRet rofit . Builder Ġ{ ĊĠĠĠ Ġval Ġok Http Builder Ġ= ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġadd Interceptor ( logged In Interceptor ) ĊĠĠĠĠĠĠĠĠĠ Ġadd Interceptor ( Network Analytics Interceptor ()) ĊĊĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogging Interceptor Ġ= ĠHttp Logging Interceptor () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogging Interceptor . level Ġ= ĠHttp Logging Interceptor . Level . BODY ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Interceptor ( logging Interceptor ) ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠ Ġ. add Converter Factory ( M oshi Converter Factory . create ( mos hi )) ĊĠĠĠĠĠĠĠ Ġ. add Call Adapter Factory ( Rx Java 2 Call Adapter Factory . create ()) ĊĠĠĠĠĠĠĠ Ġ. client ( ok Http Builder . build ()) ĊĠĠĠĠĠĠĠ Ġ. validate E ager ly ( true ) ĊĠ Ġ} Ċ } Ċ