package Ġorg . fo ss as ia . open event . general . social Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . dis pos ables . Composite Disposable Ċ import Ġio . reactivex . schedul ers . Schedulers Ċ import Ġorg . fo ss as ia . open event . general . common . Single Live Event Ċ import Ġtim ber . log . Tim ber Ċ Ċ class ĠSocial Links ViewModel ( private Ġval Ġsocial Links Service : ĠSocial Links Service ) Ġ: ĠViewModel () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcomposite Disposable Ġ= ĠComposite Disposable () ĊĊĠĠĠ Ġprivate Ġval Ġmutable Progress Ġ= ĠMutable LiveData < Boolean >() ĊĠĠĠ Ġval Ġprogress : ĠLive Data < Boolean > Ġ= Ġmutable Progress ĊĠĠĠ Ġprivate Ġval Ġmutable Social Links Ġ= ĠMutable LiveData < List < Social Link >>() ĊĠĠĠ Ġval Ġsocial Links : ĠLive Data < List < Social Link >> Ġ= Ġmutable Social Links ĊĠĠĠ Ġprivate Ġval Ġmutable Error Ġ= ĠSingle Live Event < String >() ĊĠĠĠ Ġval Ġerror : ĠLive Data < String > Ġ= Ġmutable Error ĊĊĠĠĠ Ġfun Ġload Social Links ( id : ĠLong ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcomposite Disposable . add ( social Links Service . getS ocial Links ( id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. do On Subscribe Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Progress . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. subscribe ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Social Links . value Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Progress . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . e ( it , Ġ" Error Ġfetching ĠSocial ĠLinks ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmutable Error . value Ġ= Ġ" Error Ġfetching ĠSocial ĠLinks " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Cle ared () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Cle ared () ĊĠĠĠĠĠĠĠ Ġcomposite Disposable . clear () ĊĠĠĠ Ġ} Ċ } Ċ