package Ġcom . che ise _ proj . presentation . view model . files Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . to LiveData Ċ import Ġcom . che ise _ proj . domain . entity . files . Files Entity Ċ import Ġcom . che ise _ proj . domain . use case . files . Get Time Table Task Ċ import Ġcom . che ise _ proj . presentation . extensions . as Time Table Presentation Ċ import Ġcom . che ise _ proj . presentation . extensions . as Time Table Presentation List Ċ import Ġcom . che ise _ proj . presentation . model . files . Time Table Ċ import Ġcom . che ise _ proj . presentation . model . vo . Resource Ċ import Ġcom . che ise _ proj . presentation . utils . I Server Path Ċ import Ġcom . che ise _ proj . presentation . view model . Base ViewModel Ċ import Ġio . reactivex . Back pressure Strategy Ċ import Ġio . reactivex . Observable Ċ import Ġio . reactivex . functions . Function Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠTime Table ViewModel Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval ĠgetTime Table Task : ĠGet Time Table Task , ĊĠĠĠ Ġprivate Ġval Ġserver Path : ĠI Server Path Ċ ) Ġ: ĠBase ViewModel () Ġ{ ĊĊĠĠĠ Ġfun ĠgetTime Tables (): ĠLive Data < Resource < List < Time Table >>> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠgetTime Table Task . build UseCase () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠList < Files Entity > Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . path Ġ= Ġit . photo ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . photo Ġ= Ġserver Path . set Correct Path ( it . photo ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt . as Time Table Presentation List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠList < Time Table > Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResource . on Success ( t ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. start With ( Resource . on Loading ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. onError Resume Next ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFunction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠObservable . just ( Resource . onError ( it . localized Message )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Flow able ( Back pressure Strategy . LATE ST ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to LiveData () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetTime Table ( identifier : ĠString ): ĠLive Data < Resource < Time Table >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠgetTime Table Task . build UseCase ( identifier ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠList < Files Entity > Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt [ 0 ]. as Time Table Presentation () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠTime Table Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠResource . on Success ( t ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. start With ( Resource . on Loading ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. onError Resume Next ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFunction Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠObservable . just ( Resource . onError ( it . localized Message )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Flow able ( Back pressure Strategy . LATE ST ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to LiveData () ĊĠĠĠ Ġ} Ċ }