package Ġcom . system . assignment . data . repository Ċ Ċ import Ġandroid . content . Context Ċ import Ġjavax . inject . Singleton Ċ import Ġjavax . inject . Inject Ċ import Ġcom . system . assignment . data . local . Database Helper Ċ import Ġcom . system . assignment . data . shared . Preferences Helper Ċ import Ġcom . system . assignment . data . api . Api Helper Ċ import Ġcom . google . gson . Gson Ċ import Ġcom . system . assignment . data . local . entity . User Ċ import Ġcom . system . assignment . data . model . Api User Ċ import Ġcom . system . assignment . data . repository . DataManager Ċ Ċ @ Singleton Ċ class ĠApp DataManager Ġ@ Inject Ġconstructor () Ġ: ĠData Manager Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" AppData Manager " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm Gson : ĠGson ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm Api Helper : ĠApi Helper ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm Preferences Helper : ĠPreferences Helper ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm Db Helper : ĠDatabase Helper ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar ĠmContext : ĠContext ĊĊĠĠĠ Ġoverride Ġfun ĠgetAll Users (): ĠList < User ?> Ġ= Ġm Db Helper . getAll Users () ĊĠĠĠ Ġoverride Ġfun Ġsave LocalStorage ( value : ĠString ): ĠString Ġ= Ġm Preferences Helper . save LocalStorage ( value ) ĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġget Users (): ĠList < Api User > Ġ= Ġm Api Helper . get Users () Ċ Ċ }