package Ġcom . shadow fx . shadow fx movie finder . di Ċ Ċ import Ġandroid . app . Application Ċ import Ġcom . shadow fx . shadow fx movie finder . data . network . Api Interface Ċ import Ġcom . shadow fx . shadow fx movie finder . data . network . Network Connection Interceptor ĊĊ Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ 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 . util . concurrent . TimeUnit Ċ Ċ import Ġjavax . inject . Singleton ĊĊ Ċ @ Module ( includes Ġ= Ġ[ ViewModel Module :: class ]) Ċ class ĠApp Module Ġ{ ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide M ind Val ley Service ( network Connection Interceptor : ĠNetwork Connection Interceptor ): ĠApi Interface Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġok k Http client Ġ= ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( network Connection Interceptor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( Http Logging Interceptor (). setLevel ( Http Logging Interceptor . Level . BODY )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. connect Timeout ( 1 , ĠTimeUnit . MIN UTES ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. read Timeout ( 3 0 , ĠTimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġreturn ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( ok k Http client ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl (" https :// www . om db api . com /") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( Api Interface :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Network Intercept ors ( app : ĠApplication ): ĠNetwork Connection Interceptor Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠNetwork Connection Interceptor ( app ) ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ