package Ġcom . ed uc ational apps dev . bu ho . view model Ċ Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġcom . ed uc ational apps dev . bu ho . model . Tip Ċ import Ġcom . ed uc ational apps dev . bu ho . network . Callback Ċ import Ġcom . ed uc ational apps dev . bu ho . network . Fire store Service Ċ Ċ class ĠT ips ViewModel Ġ{ ĊĠĠĠ Ġval Ġfire store Service Ġ= ĠFire store Service () ĊĠĠĠ Ġvar Ġtips List : ĠMutable LiveData < List < Tip >> Ġ= ĠMutable LiveData () ĊĠĠĠ Ġvar ĠisLoading Ġ= ĠMutable LiveData < Boolean >() ĊĊĠĠĠ Ġfun Ġrefresh () Ġ{ ĊĠĠĠĠĠĠĠ Ġget Tips From Firebase () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Tips From Firebase () Ġ{ ĊĠĠĠĠĠĠĠ Ġfire store Service . get Tips ( object : ĠCallback < List < Tip >> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonSuccess ( result : ĠList < Tip > ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtips List . post Value ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprocess Finished () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Failed ( exception : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprocess Finished () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġprocess Finished () Ġ{ ĊĠĠĠĠĠĠĠ ĠisLoading . value Ġ= Ġtrue ĊĠĠĠ Ġ} Ċ }