package Ġcom . then ew b oston . kotlin sdk . home . view models ĊĊ Ċ import Ġandroid . util . Log Ċ import Ġandroidx . h ilt . lifecycle . ViewModel Inject Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . viewModel Scope Ċ import Ġcom . then ew b oston . kotlin sdk . LIST _ DATA _ LIMIT _ DEFAULT Ċ import Ġcom . then ew b oston . kotlin sdk . home . repository . Bank Repository Ċ import Ġcom . then ew b oston . kotlin sdk . network . models . Bank Config Model Ċ import Ġcom . then ew b oston . kotlin sdk . network . models . Generic List DataModel Ċ import Ġkotlinx . coroutines . launch Ċ Ċ class ĠBank ViewModel Ġ@ ViewModel Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġrepo : ĠBank Repository Ċ ) Ġ: ĠViewModel () Ġ{ ĊĠĠĠ Ġ/* ĠOverview Ġ*/ ĊĠĠĠ Ġprivate Ġval Ġm LiveData Bank Overview Ġ= ĠMutable LiveData < Pair < String ?, ĠBank Config Model ?> ?> () ĊĠĠĠ Ġval Ġlive Data Bank Overview Ġ: ĠLive Data < Pair < String ?, ĠBank Config Model ?> ?> Ġ= Ġm LiveData Bank Overview ĊĊĠĠĠ Ġprivate Ġvar Ġtemp Data Ġ: ĠPair < String ?, ĠBank Config Model ?> ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġget Bank Config () Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġrepo . get Bank Config () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . d (" DATA _ BANK ", Ġ" In Ġvm Ġtop Ġ-> Ġ$ data ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtemp Data Ġ= Ġdata ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( temp Data != null ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetNum Of Conf Services () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm LiveData Bank Overview . post Value ( null ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġsuspend Ġfun ĠgetNum Of Conf Services () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġn Services Ġ= Ġrepo . getNum Of Conf Services () ĊĠĠĠĠĠĠĠ Ġif ( n Services != null Ġ&& Ġtemp Data != null ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtemp Data ?. second ?. n Conf Services Ġ= Ġn Services ĊĠĠĠĠĠĠĠ ĠLog . d (" DATA _ BANK ", Ġ" In Ġvm Ġbottom Ġ-> Ġ$ temp Data ") ĊĠĠĠĠĠĠĠ Ġm LiveData Bank Overview . post Value ( temp Data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/* ĠAccounts Ġ*/ ĊĠĠĠ Ġprivate Ġval Ġm LiveData Bank Accounts Ġ= ĠMutable LiveData < Pair < String ?, ĠGeneric List DataModel ? >>() ĊĠĠĠ Ġval Ġlive Data Bank Accounts Ġ: ĠLive Data < Pair < String ?, ĠGeneric List DataModel ? >> Ġ= Ġm LiveData Bank Accounts ĊĠĠĠ Ġfun Ġget Bank Accounts ( limit : ĠInt Ġ= ĠLIST _ DATA _ LIMIT _ DEFAULT , Ġoffset : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Scope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġrepo . get Accounts For B anks ( limit , Ġoffset ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm LiveData Bank Accounts . post Value ( data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ