package Ġru . base . dat apro vider . shar Pref Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . SharedPreferences Ċ import Ġio . reactivex . Observable Ċ import Ġru . gc 9 8 6 . models . Consts . Companion . DEFAULT _ INT _ SP Ċ Ċ class ĠSharedPreferences Helper Impl ( context : ĠContext ) Ġ: ĠSharedPreferences Helper Ġ{ ĊĊĠĠĠ Ġval ĠP REF _ NAME _ SHARED _ PRE F _ M _ POS Ġ= Ġ" PRE F _ NAME _ SHARED _ PRE F _ M _ POS " ĊĠĠĠ Ġval Ġcontext : ĠContext ĊĠĠĠ Ġval Ġm Settings : ĠSharedPreferences Ġ= Ġcontext . get SharedPreferences ( PRE F _ NAME _ SHARED _ PRE F _ M _ POS , ĠContext . MODE _ PRIVATE ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . context Ġ= Ġcontext ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġput SP String ( name : ĠString , Ġvalue : ĠString ): ĠObservable < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor : ĠSharedPreferences . Editor Ġ= Ġm Settings . edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . putString ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġput SP Int ( name : ĠString , Ġvalue : ĠInt ): ĠObservable < Int > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor : ĠSharedPreferences . Editor Ġ= Ġm Settings . edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Int ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġput SP Long ( name : ĠString , Ġvalue : ĠLong ): ĠObservable < Long > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor : ĠSharedPreferences . Editor Ġ= Ġm Settings . edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Long ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġput SP Boolean ( name : ĠString , Ġvalue : ĠBoolean ): ĠObservable < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġeditor : ĠSharedPreferences . Editor Ġ= Ġm Settings . edit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . put Boolean ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget SP String ( name : ĠString ): ĠObservable < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( m Settings . getString ( name , Ġ"") ? :" ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget SP Int ( name : ĠString ): ĠObservable < Int > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( m Settings . getInt ( name , ĠDEFAULT _ INT _ SP )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget SP Int ( name : ĠString , Ġdef Value : ĠInt ): ĠObservable < Int > Ġ= ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠ Ġit . onNext ( m Settings . getInt ( name , Ġdef Value )) ĊĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget SP Long ( name : ĠString ): ĠObservable < Long > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( m Settings . getLong ( name , Ġ 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget SP Boolean ( name : ĠString ) Ġ= Ġget SP Boolean ( name , Ġfalse ) ĊĊĠĠĠ Ġoverride Ġfun Ġget SP Boolean ( name : ĠString , ĠdefaultValue : ĠBoolean ): ĠObservable < Boolean > Ġ= ĊĠĠĠĠĠĠĠ ĠObservable . create Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( m Settings . getBoolean ( name , ĠdefaultValue )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} Ċ }