package Ġcom . kp stv . y ts . di Ċ Ċ import Ġcom . kp stv . y ts . App Interface Ċ import Ġcom . kp stv . y ts . extensions . utils . Ret rofit Utils Ċ import Ġcom . kp stv . y ts . interfaces . api . App Api Ċ import Ġcom . kp stv . y ts . interfaces . api . TM db Api Ċ import Ġcom . kp stv . y ts . interfaces . api . Y TS Api Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġdagger . h ilt . Install In Ċ import Ġdagger . h ilt . android . components . Application Component Ċ import Ġokhttp 3 . Interceptor Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Module Ċ @ Install In ( Application Component :: class ) Ċ object ĠNetwork Module Ġ{ ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide App Api ( ĊĠĠĠĠĠĠĠ Ġretrofit Utils : ĠRet rofit Utils ĊĠĠĠ Ġ): ĠApp Api Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġretrofit Utils . get Ret rofit Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( App Interface . Y TS _ BASE _ API _ URL ) Ġ// ĠbaseUrl Ġcurrently Ġdoes Ġnot Ġmatter ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( App Api :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Y TS Api ( ĊĠĠĠĠĠĠĠ Ġretrofit Utils : ĠRet rofit Utils ĊĠĠĠ Ġ): ĠY TS Api Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġretrofit Utils . get Ret rofit Builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( App Interface . Y TS _ BASE _ API _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( Y TS Api :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide T MD b Api ( ĊĠĠĠĠĠĠĠ Ġretrofit Utils : ĠRet rofit Utils ĊĠĠĠ Ġ): ĠTM db Api Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Interceptor Ġ= ĠInter ceptor Ġ{ Ġchain Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġurl Ġ= Ġchain . request () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. url ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. newBuilder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add QueryParameter (" api _ key ", ĠApp Interface . TM DB _ API _ KEY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= Ġchain . request () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. newBuilder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. url ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ Interceptor Ġchain . proceed ( request ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġ Ġretrofit Utils . get Ret rofit Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( App Interface . TM DB _ BASE _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( ret rofit Utils . get Http Builder (). add Interceptor ( request Interceptor ). build ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( TM db Api :: class . java ) ĊĠĠĠ Ġ} Ċ }