package Ġcom . useful ness . th reet en bp Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . content . Context Ċ import Ġandroidx . annotation . MainThread Ċ import Ġandroidx . annotation . Worker Thread Ċ import Ġorg . th reet en . bp . zone . Zone Rules Initializer Ċ import Ġorg . th reet en . bp . Zone Id Ċ import Ġorg . th reet en . bp . zone . Zone Rules Provider Ċ import Ġjava . util . concurrent . atomic . Atomic Boolean Ċ Ċ public Ġobject ĠLazy Three Ten Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠINITIAL IZED Ġ= ĠAtomic Boolean () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠInitialize Ġth reet en bp Ġto Ġuse ĠLazy Three Ten Bp 's ĠZone Rules Provider ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ MainThread ĊĠĠĠ Ġpublic Ġfun Ġinit ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( INITIAL IZED . get AndSet ( true )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠZone Rules Initializer . set Initializer ( Lazy Zone Rules Initializer (( context . application Context Ġas ĠApplication ))) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCall Ġon Ġbackground Ġthread Ġto Ġeager ly Ġload Ġall Ġzones . ĠStarts Ġwith Ġloading ĊĠĠĠĠ Ġ* Ġ[ Zone Id . system Default ] Ġwhich Ġis Ġthe Ġone Ġmost Ġlikely Ġto Ġbe Ġused . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġ@ Worker Thread ĊĠĠĠ Ġpublic Ġfun Ġcache Zones () Ġ{ ĊĠĠĠĠĠĠĠ ĠZone Id . system Default (). rules ĊĠĠĠĠĠĠĠ Ġfor Ġ( zone Id Ġin ĠZone Rules Provider . get Available Zone Ids ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠZone Rules Provider . get Rules ( zone Id , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ