package Ġcom . simple club . firebase _ rest _ auth . framework . rest . utils Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . SharedPreferences Ċ import Ġcom . google . firebase . Firebase App Ċ import Ġcom . simple club . firebase _ rest _ auth . core . data . rest . models . Firebase Rest Auth User Ċ Ċ class ĠUser Storage ( context : ĠContext , Ġprivate Ġval Ġapp : ĠFirebase App ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġprefs : ĠSharedPreferences Ġ= Ġcontext . get SharedPreferences (" User Storage ", ĠContext . MODE _ PRIVATE ) ĊĊĠĠĠ Ġfun Ġset ( user : ĠFirebase Rest Auth User ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( user Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclear () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġthis . prefs . edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. putString ( getKey (" id Token "), Ġuser . id Token ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. putString ( getKey (" refresh Token "), Ġuser . refresh Token ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget (): ĠFirebase Rest Auth User ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Token Ġ= Ġthis . prefs . getString ( getKey (" id Token "), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġrefresh Token Ġ= Ġthis . prefs . getString ( getKey (" refresh Token "), Ġnull ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( id Token Ġ!= Ġnull Ġ&& Ġrefresh Token Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠFirebase Rest Auth User ( id Token , Ġrefresh Token ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġclear () Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . prefs . edit (). clear (). apply () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠgetKey ( field : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" User Storage ___ ${ app . options . projectId } __$ field " ĊĠĠĠ Ġ} Ċ Ċ } Ċ