package Ġcom . sch lo esser . mast ert hesis . data . repository Ċ Ċ import Ġandroid . content . Context Ċ import Ġcom . sch lo esser . mast ert hesis . data . base . Singleton Holder Ċ Ċ class ĠSession Repository Ġprivate Ġconstructor ( context : ĠContext ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠSingleton Holder < Session Repository , ĠContext >( :: Session Repository ) ĊĊĠĠĠ Ġprivate Ġval Ġpreferences Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġcontext . get SharedPreferences (" session ", ĠContext . MODE _ PRIVATE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar ĠaccessToken : ĠString ? ĊĠĠĠĠĠĠĠ Ġ@ Synchron ized Ġset ( value ) Ġ= Ġpreferences . edit (). putString (" accessToken ", Ġvalue ). apply () ĊĠĠĠĠĠĠĠ Ġ@ Synchron ized Ġget () Ġ= Ġpreferences . getString (" accessToken ", Ġnull ) ĊĊĠĠĠ Ġvar Ġrefresh Token : ĠString ? ĊĠĠĠĠĠĠĠ Ġ@ Synchron ized Ġset ( value ) Ġ= Ġpreferences . edit (). putString (" refresh Token ", Ġvalue ). apply () ĊĠĠĠĠĠĠĠ Ġ@ Synchron ized Ġget () Ġ= Ġpreferences . getString (" refresh Token ", Ġnull ) ĊĊĊĠĠĠ Ġfun Ġhas Session () Ġ= ĠaccessToken Ġ!= Ġnull Ġ&& Ġrefresh Token Ġ!= Ġnull ĊĊĠĠĠ Ġfun Ġclear Session () Ġ{ ĊĠĠĠĠĠĠĠ Ġpreferences . edit (). clear (). apply () ĊĠĠĠ Ġ} Ċ }