/* Ċ Ġ* ĠCopyright Ġ( C ) Ġby ĠM inter Team . Ġ 2 0 2 0 Ċ Ġ* Ġ@ link Ġ< a Ġhref =" https :// github . com / M inter Team "> Org ĠGithub </ a > Ċ Ġ* Ġ@ link Ġ< a Ġhref =" https :// github . com / ed ward stock "> Maint ainer ĠGithub </ a > Ċ Ġ* Ċ Ġ* ĠThe ĠMIT ĠLicense Ċ Ġ* Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ċ Ġ* Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ċ Ġ* Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ċ Ġ* Ġto Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ċ Ġ* Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ċ Ġ* Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ċ Ġ* Ġall Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ Ġ* ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ Ġ* ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE Ċ Ġ* ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER Ċ Ġ* ĠLIABILITY , ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , Ċ Ġ* ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN Ċ Ġ* ĠTHE ĠSOFTWARE . Ċ Ġ*/ Ċ package Ġnetwork . min ter . bip wallet . internal . di Ċ Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġnetwork . min ter . bip wallet . apis . explorer .* Ċ import Ġnetwork . min ter . bip wallet . coins . Cached Coins Repository Ċ import Ġnetwork . min ter . bip wallet . coins . Coin Mapper Ċ import Ġnetwork . min ter . bip wallet . coins . Repo Coins Ċ import Ġnetwork . min ter . bip wallet . db . Wallet Database Ċ import Ġnetwork . min ter . bip wallet . internal . data . Cached Repository Ċ import Ġnetwork . min ter . bip wallet . internal . di . annotations . Db Cache Ċ import Ġnetwork . min ter . bip wallet . internal . exceptions . Error Manager Ċ import Ġnetwork . min ter . bip wallet . internal . storage . Account Storage Ċ import Ġnetwork . min ter . bip wallet . internal . storage . KV Storage Ċ import Ġnetwork . min ter . bip wallet . internal . storage . Repo Accounts Ċ import Ġnetwork . min ter . bip wallet . internal . storage . Secret Storage Ċ import Ġnetwork . min ter . bip wallet . stories . repo . Repo Cached St ories Ċ import Ġnetwork . min ter . bip wallet . stories . repo . St ories Repository Ċ import Ġnetwork . min ter . explorer . M inter Explorer SDK Ċ import Ġnetwork . min ter . explorer . repo . Gate Coin Repository Ċ import Ġjava . util . concurrent . TimeUnit Ċ Ċ /** Ċ Ġ* Ġm inter - android - wallet . Ġ 2 0 1 8 Ċ Ġ* Ġ@ author ĠE du ard ĠMax im ov ich Ġ( ed ward . v stock @ gmail . com ) Ċ Ġ*/ Ċ @ Module Ċ object ĠCache Module Ġ{ ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Account Storage (@ Db Cache Ġstorage : ĠK V Storage , Ġaccount Storage : ĠAccount Storage , Ġem : ĠError Manager ): ĠRepo Accounts Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRepo Accounts ( storage , Ġaccount Storage ). retry When ( em . retry When Handler ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Explorer Repo (@ Db Cache Ġstorage : ĠK V Storage , Ġsecret Storage : ĠSecret Storage , Ġapi : ĠM inter Explorer SDK , Ġem : ĠError Manager ): ĠRepo Transactions Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠCached Repository ( storage , ĠCache Tx Repository ( storage , Ġsecret Storage , Ġapi . api Service )). retry When ( em . retry When Handler ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Cached Validators Repo (@ Db Cache Ġstorage : ĠK V Storage , Ġapi : ĠM inter Explorer SDK , Ġem : ĠError Manager ): ĠRepo Validators Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRepo Validators ( storage , ĠCache Validators Repository ( storage , Ġapi . api Service )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTime To Live ( 6 0 Ġ* Ġ 2 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. retry When ( em . retry When Handler ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Cached Coins Repo (@ Db Cache Ġstorage : ĠK V Storage , Ġdb : ĠWallet Database , Ġapi : ĠM inter Explorer SDK , Ġem : ĠError Manager ): ĠRepo Coins Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRepo Coins ( storage , ĠCached Coins Repository ( storage , Ġdb , Ġapi . api Service )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTime To Live (/* 3 Ġ Ġminutes Ġ*/ Ġ 6 0 Ġ* Ġ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. retry When ( em . retry When Handler ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Coins Mapper ( repo : ĠRepo Coins , Ġgate Repo : ĠGate Coin Repository ): ĠCoin Mapper Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠCoin Mapper ( repo , Ġgate Repo ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Cached Daily Reward Stats Repo (@ Db Cache Ġstorage : ĠK V Storage , Ġsecret Storage : ĠSecret Storage , Ġapi : ĠM inter Explorer SDK ): ĠRepo Daily Rewards Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRepo Daily Rewards ( storage , ĠCached Daily Reward Statistics Repository ( storage , Ġsecret Storage , Ġapi . api Service )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTime To Live ( 6 0 Ġ* Ġ 1 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Cached Monthly Reward Stats Repo (@ Db Cache Ġstorage : ĠK V Storage , Ġsecret Storage : ĠSecret Storage , Ġapi : ĠM inter Explorer SDK ): ĠRepo Monthly Rewards Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRepo Monthly Rewards ( storage , ĠCached Monthly Rewards Statistics Repository ( storage , Ġsecret Storage , Ġapi . api Service )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTime To Live ( 6 0 Ġ* Ġ 3 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Wallet App ĊĠĠĠ Ġfun Ġprovide Cached St ories Repo (@ Db Cache Ġstorage : ĠK V Storage , Ġrepo : ĠSt ories Repository , Ġem : ĠError Manager ): ĠRepo Cached St ories Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRepo Cached St ories ( storage , Ġrepo ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTime To Live ( 1 0 , ĠTimeUnit . MIN UTES ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. retry When ( em . retry When Handler ) ĊĠĠĠ Ġ} Ċ Ċ }