package Ġcom . j ason . system . model Ċ Ċ import Ġandroidx . paging . Paging Source Ċ import Ġandroidx . paging . Paging State Ċ import Ġcom . j ason . system . api . System Service Ċ import Ġjava . lang . Exception Ċ Ċ class ĠSys Art DataSource ( private Ġval Ġcid : Int , private Ġval Ġservice : System Service ): Paging Source < Int , Sys Article >() Ġ Ġ{ ĊĊĊĠĠĠ Ġoverride Ġfun Ġget Refresh Key ( state : ĠP aging State < Int , ĠSys Article >): ĠInt ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġload ( params : ĠLoad Params < Int >): ĠLoad Result < Int , ĠSys Article > Ġ{ ĊĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠ Ġval Ġpage Num Ġ= Ġparams . key Ġ?: Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġservice . get Art List ( pageNum , cid ) ĊĠĠĠĠĠĠĠĠĠĠ Ġval Ġprev Key Ġ= Ġif Ġ( pageNum Ġ> Ġ 0 ) Ġpage Num Ġ- Ġ 1 Ġelse Ġnull ĊĠĠĠĠĠĠĠĠĠĠ ĠLoad Result . Page ( response . data . datas , prev Key Ġ= Ġprev Key , next Key Ġ= Ġpage Num Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠ Ġ} catch Ġ( e : Exception ){ ĊĠĠĠĠĠĠĠĠĠĠ ĠLoad Result . Error ( e ) ĊĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }