package Ġapp . story tel . candidate . com . web service Ċ Ċ import Ġapp . story tel . candidate . com . model . Comment Ċ import Ġapp . story tel . candidate . com . model . Photo Ċ import Ġapp . story tel . candidate . com . model . Post And Photo Ċ import Ġio . reactivex . Single Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . adapter . rx java 2 . Rx Java 2 Call Adapter Factory Ċ import Ġretrofit 2 . converter . gson . Gson Converter Factory Ċ import Ġretrofit 2 . http . GET Ċ import Ġretrofit 2 . http . Path Ċ Ċ interface ĠWeb service Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠBASE _ URL Ġ= Ġ" https :// json placeholder . typ icode . com " ĊĊĠĠĠĠĠĠĠ Ġfun Ġcreate (): ĠWeb service Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclient Ġ= ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( BASE _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( client ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Call Adapter Factory ( Rx Java 2 Call Adapter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( Web service :: class . java ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ GET ("/ posts ") ĊĠĠĠ Ġfun Ġget Posts (): ĠSingle < List < Post And Photo >> ĊĊĠĠĠ Ġ@ GET ("/ photos ") ĊĠĠĠ Ġfun Ġget Photos (): ĠSingle < List < Photo >> ĊĊĠĠĠ Ġ@ GET ("/ posts /{ id }/ comments ") ĊĠĠĠ Ġfun Ġget Comments (@ Path (" id ") Ġpost Id : ĠInt ): ĠSingle < List < Comment >> Ċ }