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 Circular Task Ċ import Ġcom . che ise _ proj . presentation . extensions . as Circular Presentation Ċ import Ġcom . che ise _ proj . presentation . extensions . as Circular Presentation List Ċ import Ġcom . che ise _ proj . presentation . model . files . Circular Ċ 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 ĠCircular ViewModel Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġget Circular Task : ĠGet Circular Task , ĊĠĠĠ Ġprivate Ġval Ġserver Path : ĠI Server Path Ċ ) Ġ: ĠBase ViewModel () Ġ{ ĊĊĠĠĠ Ġfun Ġget Circular s (): ĠLive Data < Resource < List < Circular >>> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġget Circular 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 Circular Presentation List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠList < Circular > Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ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 Ġget Circular ( identifier : ĠString ): ĠLive Data < Resource < Circular >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġget Circular Task . build UseCase ( identifier ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠList < Files Entity > Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt [ 0 ]. as Circular Presentation () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġt : ĠCircular Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ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 () ĊĠĠĠ Ġ} Ċ }