package Ġco . ke . x ently . source . remote . services Ċ Ċ import Ġco . ke . x ently . data . Recommendation Ċ import Ġco . ke . x ently . data . Recommendation Request Ċ import Ġco . ke . x ently . data . Shopping ListItem Ċ import Ġco . ke . x ently . source . remote . Deferred Recommendation Ċ import Ġco . ke . x ently . source . remote . Paged Data Ċ import Ġretrofit 2 . Response Ċ import Ġretrofit 2 . http .* Ċ Ċ interface ĠShop ping List Service Ġ{ ĊĠĠĠ Ġ@ POST (" shopping - list /") ĊĠĠĠ Ġsuspend Ġfun Ġadd (@ Body Ġitem : ĠShop ping ListItem ): ĠResponse < Shopping ListItem > ĊĊĠĠĠ Ġ@ GET (" shopping - list /{ id }/ ") ĊĠĠĠ Ġsuspend Ġfun Ġget ( ĊĠĠĠĠĠĠĠ Ġ@ Path (" id ") Ġid : ĠLong , ĊĠĠĠĠĠĠĠ Ġ@ Header (" Cache - Control ") ĊĠĠĠĠĠĠĠ Ġcache Control : ĠString Ġ= Ġ" only - if - cached ", ĊĠĠĠ Ġ): ĠResponse < Shopping ListItem > ĊĊĠĠĠ Ġ@ GET (" shopping - list /") ĊĠĠĠ Ġsuspend Ġfun Ġget ( ĊĠĠĠĠĠĠĠ Ġ@ Query (" page ") ĊĠĠĠĠĠĠĠ Ġpage : ĠInt Ġ= Ġ 1 , ĊĠĠĠĠĠĠĠ Ġ@ Query (" size ") ĊĠĠĠĠĠĠĠ Ġsize : ĠInt ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġ@ Header (" Cache - Control ") ĊĠĠĠĠĠĠĠ Ġcache Control : ĠString Ġ= Ġ" only - if - cached ", ĊĠĠĠĠĠĠĠ Ġ@ Query Map ĊĠĠĠĠĠĠĠ Ġqueries : ĠMap < String , ĠString > Ġ= Ġempty Map (), ĊĠĠĠ Ġ): ĠResponse < Paged Data < Shopping ListItem >> ĊĊĠĠĠ Ġ@ GET (" shopping - list / grouped /") ĊĠĠĠ Ġsuspend Ġfun Ġget ( ĊĠĠĠĠĠĠĠ Ġ@ Query (" by ") Ġgroup By : ĠString , ĊĠĠĠĠĠĠĠ Ġ@ Header (" Cache - Control ") ĊĠĠĠĠĠĠĠ Ġcache Control : ĠString Ġ= Ġ" only - if - cached ", ĊĠĠĠ Ġ): ĠResponse < Map < String , ĠList < Shopping ListItem >>> ĊĊĠĠĠ Ġ/*@ GET (" shopping - list / recommend ations /") ĊĠĠĠ Ġsuspend Ġfun Ġget Recommend ations ( ĊĠĠĠĠĠĠĠ Ġ@ Query (" group ") Ġgroup : ĠString , ĊĠĠĠĠĠĠĠ Ġ@ Query (" group _ by ") Ġgroup By : ĠString , ĊĠĠĠĠĠĠĠ Ġ@ Header (" Cache - Control ") Ġcache Control : ĠString Ġ= Ġ" only - if - cached ", ĊĠĠĠ Ġ): ĠResponse < List < Recommendation >> */ ĊĊĠĠĠ Ġ@ GET (" shopping - list / recommend ations /") ĊĠĠĠ Ġsuspend Ġfun Ġget Recommend ations ( ĊĠĠĠĠĠĠĠ Ġ@ Query (" lookup _ id ") Ġlookup Id : ĠString , ĊĠĠĠĠĠĠĠ Ġ@ Header (" Cache - Control ") Ġcache Control : ĠString Ġ= Ġ" only - if - cached ", ĊĠĠĠ Ġ): ĠResponse < List < Recommendation >> ĊĊĠĠĠ Ġ@ POST (" shopping - list / recommend ations /") ĊĠĠĠ Ġsuspend Ġfun Ġget Recommend ations (@ Body Ġrequest : ĠRecommend ation Request ): ĠResponse < Deferred Recommendation > Ċ }