package Ġir . be ig ir ad . near ly . di . modules Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . content . SharedPreferences Ċ import Ġdagger . Bind s Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġir . be ig ir ad . data . repository . Preferences Repository Ċ import Ġir . be ig ir ad . preferences . Preferences Factory Ċ import Ġir . be ig ir ad . preferences . Preferences Repository Impl Ċ import Ġjavax . inject . Singleton Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠFar had ĠBe ig ir ad Ġon Ġ 3 / 1 / 1 9 . Ċ Ġ*/ Ċ @ Module Ċ abstract Ġclass ĠPreferences Module Ġ{ ĊĊĠĠĠ Ġ@ Module ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Provides ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġ@ Singleton ĊĠĠĠĠĠĠĠ Ġfun Ġprovide SharedPreferences ( application : ĠApplication ): ĠSharedPreferences Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠPreferences Factory (). getInstance ( application . application Context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Bind s ĊĠĠĠ Ġabstract Ġfun Ġbind Preferences Repository ( preferences Repository : ĠPreferences Repository Impl ): ĠPreferences Repository Ċ Ċ }