package Ġcom . ash ish . imgur search demo . di Ċ Ċ import Ġcom . ash ish . imgur search demo . Build Config Ċ import Ġcom . ash ish . imgur search demo . imgur api . Auth Interceptor Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġdagger . h ilt . Install In Ċ import Ġdagger . h ilt . android . components . Application Component Ċ import Ġokhttp 3 . Cache Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . logging . Http Logging Interceptor Ċ import Ġjava . io . File Ċ import Ġjavax . inject . Singleton Ċ Ċ /** Ċ Ġ* ĠProvides Ġthe ĠOk Http Ġrelated Ġdependencies . Ċ Ġ*/ Ċ @ Module Ċ @ Install In ( Application Component :: class ) Ċ object ĠOk Http Module Ġ{ ĊĊĠĠĠ Ġprivate Ġconst Ġval ĠCACHE _ SIZE Ġ= Ġ 2 5 L Ġ* Ġ 1 0 2 4 L Ġ* Ġ 1 0 2 4 L Ġ// ĠCache Ġsize Ġin ĠMB ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Auth Interceptor Ok HttpClient ( ĊĠĠĠĠĠĠĠ Ġauth Interceptor : ĠAuth Interceptor , ĊĠĠĠĠĠĠĠ Ġlogging Interceptor : ĠHttp Logging Interceptor , ĊĠĠĠĠĠĠĠ Ġcache File : ĠFile ĊĠĠĠ Ġ): ĠOk HttpClient Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. cache ( Cache ( cache File , ĠCACHE _ SIZE )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( auth Interceptor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( logging Interceptor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Auth Interceptor (): ĠAuth Interceptor Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAuth Interceptor () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Http Logging Interceptor (): ĠHttp Logging Interceptor Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠHttp Logging Interceptor (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlevel Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) ĠHttp Logging Interceptor . Level . BODY Ġelse ĠHttp Logging Interceptor . Level . NONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġred act Header (" Authorization ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }