package Ġcom . example . b awn . nod er _ kotlin Ċ Ċ import Ġcom . example . b awn . my application . Collection Api Ċ import Ġcom . example . b awn . my application . Me Ċ import Ġcom . example . b awn . my application . Profile Api Ċ import Ġcom . example . b awn . my application . ResponseData Wrapper Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . adapter . rx java . Rx Java Call Adapter Factory Ċ import Ġretrofit 2 . converter . gson . Gson Converter Factory Ċ import Ġrx . Observable Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġb awn Ġon Ġ 1 3 / 0 7 / 2 0 1 7 . Ċ Ġ*/ Ċ Ċ class ĠRest API Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtopics Api : ĠTop ics Api ĊĠĠĠ Ġprivate Ġval Ġrecent Topics : ĠProfile Api ĊĠĠĠ Ġprivate Ġval Ġcollection Api : ĠCollection Api ĊĊĠĠĠ Ġinit Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġretrofit Ġ= ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Call Adapter Factory ( Rx Java Call Adapter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl (" https :// c nodejs . org / api / v 1 /") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġtopics Api Ġ= Ġretrofit . create ( Topics Api :: class . java ) ĊĠĠĠĠĠĠĠ Ġrecent Topics Ġ= Ġretrofit . create ( Profile Api :: class . java ) ĊĠĠĠĠĠĠĠ Ġcollection Api Ġ= Ġretrofit . create ( Collection Api :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Topics (): ĠObservable < Response List Wrapper < Topic >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtopics Api . get Topics () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Recent Topics (): ĠObservable < ResponseData Wrapper < Me >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġrecent Topics . get Profile () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Collection List (): ĠObservable < Response List Wrapper < Topic >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcollection Api . get Collection () ĊĠĠĠ Ġ} Ċ }