package Ġcom . test . pix day . api Ċ Ċ 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 Ġretrofit 2 . http . GET Ċ import Ġretrofit 2 . http . Query Ċ Ċ /** Ċ Ġ* ĠA Ġ[ Sh utter Stock Service ] Ġinterface Ċ Ġ* ĠIts Ġresponsible Ġfor Ġcreating Ġa Ġ[ Ret rofit ] Ġclient Ċ Ġ* Ġto Ġmake Ġa ĠGET , ĠPUT , ĠPOST Ġand ĠDELETE Ġrequest Ċ Ġ* Ġand Ġeven Ġfor Ġthe Ġ[ Sh utter Stock Service ] Ġinstance Ġmethods Ċ Ġ*/ Ċ interface ĠSh utter Stock Service Ġ{ ĊĊĠĠĠ Ġ@ GET (" v 2 / images / search ") ĊĠĠĠ Ġsuspend Ġfun Ġsearch Images ( ĊĠĠĠĠĠĠĠ Ġ@ Query (" query ") Ġquery : ĠString , ĊĠĠĠĠĠĠĠ Ġ@ Query (" page ") Ġpage : ĠInt , ĊĠĠĠĠĠĠĠ Ġ@ Query (" per _ page ") Ġitems PerPage : ĠInt ĊĠĠĠ Ġ): ĠPhoto Response ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠBASE _ URL Ġ= Ġ" https :// api . sh utter stock . com /" ĊĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( accessToken : ĠString ): ĠSh utter Stock Service Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogger Ġ= ĠHttp Logging Interceptor () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . level Ġ= ĠHttp Logging Interceptor . Level . BASIC ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclient Ġ= ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( logger ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( OAuth Interceptor ( accessToken )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( BASE _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( client ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( Sh utter Stock Service :: class . java ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }