package Ġk z . o qu . android . ui _ student . activity Ċ Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġk z . o qu . android . base _ classes . Base ViewModel Ċ import Ġk z . o qu . android . http . local . shared _ preferences . SharedPreferences Settings Ċ import Ġk z . o qu . android . model . pojo . User Ċ import Ġk z . o qu . android . model . repositories . user . User Download Callbacks Ċ import Ġk z . o qu . android . model . repositories . user . UserRepository Ċ import Ġk z . o qu . android . model . repositories . user . UserRepository Impl Ċ Ċ class ĠStudent Activity ViewModel Ġ: ĠBase ViewModel (), ĠUser Download Callbacks Ġ{ ĊĊĠĠĠ Ġval Ġis User Downloaded : ĠMutable LiveData < Boolean > Ġ= ĠMutable LiveData () ĊĊĠĠĠ Ġprivate Ġval Ġrepository : ĠUser Repository Ġ= ĠUser Repository Impl () ĊĊĠĠĠ Ġfun Ġdownload AndSet User (){ ĊĠĠĠĠĠĠĠ Ġrepository . getUser ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon User Downloading () Ġ{ ĊĠĠĠĠĠĠĠ Ġshow ProgressBar . value Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon User Downloaded ( user : ĠUser ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis User Downloaded . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġshow ProgressBar . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠ ĠSharedPreferences Settings . setUser ( user ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon User Download Error ( text : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġshow ProgressBar . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġtoast Text . value Ġ= Ġtext ĊĠĠĠ Ġ} Ċ }