package Ġcom . ct ech . eat y . ui . collection . epic Ċ Ċ import Ġcom . ct ech . eat y . base . redux . Action Ċ import Ġcom . ct ech . eat y . base . redux . Epic Ċ import Ġcom . ct ech . eat y . repository . Barcode Generator . create Collection List Bar Code Ċ import Ġcom . ct ech . eat y . repository . Collection Repository Ċ import Ġcom . ct ech . eat y . ui . collection . action . Collection Action Ċ import Ġcom . ct ech . eat y . ui . collection . result . Load More Result Ċ import Ġcom . ct ech . eat y . ui . collection . state . Collection State Ċ import Ġcom . ct ech . eat y . util . rx . Thread Scheduler Ċ import Ġio . reactivex . Observable Ċ import Ġio . reactivex . subjects . Behavior Subject Ċ import Ġio . reactivex . subjects . Publish Subject Ċ Ċ class ĠLoad More Epic ( private Ġval Ġcollection Repository : ĠCollection Repository , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġthread Scheduler : ĠThread Scheduler ) Ġ: ĠE pic < Collection State > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġapply ( action : ĠPublish Subject < Action >, Ġstate : ĠBehavior Subject < Collection State >): ĠObservable < Load More Result > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġaction ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ== ĠCollection Action . LOAD _ MORE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ! state . value . loading More ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. flatMap Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpage Ġ= Ġstate . value . page Ġ+ Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcollection Repository . get Collections ( create Collection List Bar Code ( page )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLoad More Result . success ( page , Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. onError Return Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLoad More Result . fail ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( thread Scheduler . worker Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. start With ( Load More Result . in Progress ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }