package Ġcom . k rm . t mdb . ui . fragments . home Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġcom . k rm . t mdb . data . api . News Api Ċ import Ġcom . k rm . t mdb . ui . activities . base . Base Interactor Ċ import Ġcom . k rm . t mdb . utils . Const Strings . Companion . AIR _ TV Ċ import Ġcom . k rm . t mdb . utils . Const Strings . Companion . NOW _ PLAY ING Ċ import Ġcom . k rm . t mdb . utils . Const Strings . Companion . POP ULAR _ MOV IE Ċ import Ġcom . k rm . t mdb . utils . Const Fun . e Ċ import Ġcom . k rm . t mdb . utils . schedul ers . Scheduler Provider Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠInter actor Fragment Home < V Ġ: ĠInterface Fragment Home . View > Ġ@ Inject Ġconstructor ( support Fragment : ĠFragment Manager , Ġcontext : ĠContext , Ġapi : ĠNews Api ) Ġ: ĠBase Interactor < V >( support Fragment , Ġcontext , api ), ĊĠĠĠ ĠInterface Fragment Home . Interactor < V > Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Params (): ĠMutable Map < String , ĠString > Ġ= Ġget Api (). get Params ( 1 ) ĊĊĠĠĠ Ġoverride Ġfun Ġget Movies Pop ular () Ġ{ ĊĠĠĠĠĠĠĠ Ġget View (). add Disposable ( get Api (). get Movies ( POP ULAR _ MOV IE , Ġget Params ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Scheduler Provider . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Scheduler Provider . ui ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. do On Subscribe Ġ{ Ġif Ġ( is View Null ()) Ġget View (). show Loading Movies Pop ular () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. do Finally Ġ{ Ġif Ġ( is View Null ()) Ġget View (). hide Loading Movies Pop ular () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġif Ġ( is View Null ()) Ġget View (). setData Movies Pop ular ( it . results ) Ġ}, Ġ{ Ġe ( it ) Ġ})) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Movies Now Playing () Ġ{ ĊĠĠĠĠĠĠĠ Ġget View (). add Disposable ( get Api (). get Movies ( NOW _ PLAY ING , Ġget Params ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Scheduler Provider . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Scheduler Provider . ui ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. do On Subscribe Ġ{ Ġif Ġ( is View Null ()) Ġget View (). show Loading Movies Now Playing () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. do Finally Ġ{ Ġif Ġ( is View Null ()) Ġget View (). hide Loading Movies Now Playing () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġif Ġ( is View Null ()) Ġget View (). setData Movies Now Playing ( it . results ) Ġ}, Ġ{ Ġe ( it ) Ġ})) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget On Tv () Ġ{ ĊĠĠĠĠĠĠĠ Ġget View (). add Disposable ( get Api (). get Tv Shows ( AIR _ TV , get Params ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Scheduler Provider . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Scheduler Provider . ui ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. do On Subscribe Ġ{ Ġif Ġ( is View Null ()) Ġget View (). show Loading On Tv () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. do Finally Ġ{ Ġif Ġ( is View Null ()) Ġget View (). hide Loading O nt Tv () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġif Ġ( is View Null ()) Ġget View (). setData On Tv ( it . results ) Ġ}, Ġ{ Ġe ( it ) Ġ})) ĊĠĠĠ Ġ} Ċ Ċ }