package Ġcom . push pal . covid tracker . ui . dashboard . stats Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . viewModel Scope Ċ import Ġcom . push pal . covid tracker . model . App Repository Ċ import Ġcom . push pal . covid tracker . model . network . Network Manager Ċ import Ġcom . push pal . covid tracker . ui . base . Base ViewModel Ċ import Ġkotlinx . coroutines . launch Ċ import Ġtim ber . log . Tim ber Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠStats ViewModel Ġ@ Inject Ġconstructor ( ĊĠ Ġprivate Ġval Ġapp Repository : ĠApp Repository , ĊĠ Ġprivate Ġval Ġnetwork Manager : ĠNetwork Manager Ċ ) Ġ: ĠBase ViewModel () Ġ{ ĊĊĠ Ġfun Ġinit ( arguments : ĠBundle ?) Ġ{} ĊĊĠ Ġfun Ġget World Stat () Ġ{ ĊĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠ Ġnetwork Manager . has Internet Access () Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġ_ live Data Loaded . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġapp Repository . get World Stat () ĊĊĠĠĠĠĠĠĠĠĠ Ġresponse . first . let Ġ{ Ġworld Stat Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġworld Stat ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . d (" World ĠStat ĠResponse : Ġ$ world Stat ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ live Total Cases . value Ġ= Ġworld Stat . total Cases ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ live Total Death s . value Ġ= Ġworld Stat . total Death s ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ live Total Re covered . value Ġ= Ġworld Stat . total Re covered ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ live New Cases . value Ġ= Ġworld Stat . new Cases ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_ live New Death s . value Ġ= Ġworld Stat . new Death s ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠ Ġresponse . second ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . d (" Exception : Ġ$ it ") ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġprivate Ġval Ġ_ live Total Cases Ġ= ĠMutable LiveData < String >() ĊĠ Ġval Ġlive Total Cases : ĠLive Data < String > ĊĠĠĠ Ġget () Ġ= Ġ_ live Total Cases ĊĊĠ Ġprivate Ġval Ġ_ live Total Death s Ġ= ĠMutable LiveData < String >() ĊĠ Ġval Ġlive Total Death s : ĠLive Data < String > ĊĠĠĠ Ġget () Ġ= Ġ_ live Total Death s ĊĊĠ Ġprivate Ġval Ġ_ live Total Re covered Ġ= ĠMutable LiveData < String >() ĊĠ Ġval Ġlive Total Re covered : ĠLive Data < String > ĊĠĠĠ Ġget () Ġ= Ġ_ live Total Re covered ĊĊĠ Ġprivate Ġval Ġ_ live New Cases Ġ= ĠMutable LiveData < String >() ĊĠ Ġval Ġlive New Cases : ĠLive Data < String > ĊĠĠĠ Ġget () Ġ= Ġ_ live New Cases ĊĊĠ Ġprivate Ġval Ġ_ live New Death s Ġ= ĠMutable LiveData < String >() ĊĠ Ġval Ġlive New Death s : ĠLive Data < String > ĊĠĠĠ Ġget () Ġ= Ġ_ live New Death s ĊĊĠ Ġprivate Ġval Ġ_ live Data Loaded Ġ= ĠMutable LiveData < Boolean >() ĊĠ Ġval Ġlive Data Loaded : ĠLive Data < Boolean > ĊĠĠĠ Ġget () Ġ= Ġ_ live Data Loaded Ċ }