/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 6 ĠM Ga et an 8 9 Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġio . kol umb us Ċ Ċ import Ġandroid . content . Context Ċ import Ġio . kol umb us . activity . Tables Activity Ċ import Ġio . realm . Realm Configuration Ċ import Ġio . realm . Realm Model Ċ Ċ object ĠK ol umb us Ġ{ Ċ ĉ internal Ġvar Ġarchitect Ġ= ĠArch itect () Ċĉ ĉ private Ġset Ċ ĉ private Ġval Ġconfigurations Ġ= Ġmutable Set Of < Realm Configuration >() Ċ ĉ internal Ġval Ġitems Ġ= Ġmutable ListOf < Realm Model >() ĊĊ ĉ @ Jvm Static Ċ ĉ fun Ġbuild () Ġ= Ġthis ĊĊ ĉ fun Ġexplore ( configuration : ĠRealm Configuration ): ĠK ol umb us Ġ{ Ċĉ ĉ this . configurations . add ( configuration ) ĊĊĉ ĉ return Ġthis Ċ ĉ } ĊĊ ĉ fun Ġforget ( configuration : ĠRealm Configuration ): ĠK ol umb us Ġ{ Ċĉ ĉ this . configurations . remove ( configuration ) ĊĊĉ ĉ return Ġthis Ċ ĉ } ĊĊ ĉ fun Ġfor getAll () Ġ= Ġthis . configurations . clear () ĊĊ ĉ fun Ġnavigate ( context : ĠContext ) Ġ= ĠTables Activity . start ( context ) ĊĊ ĉ fun Ġwith Arch itect ( architect : ĠArch itect ): ĠK ol umb us Ġ{ Ċĉ ĉ this . architect Ġ= Ġarchitect ĊĊĉ ĉ return Ġthis Ċ ĉ } ĊĊ ĉ internal Ġfun Ġget Tables (): ĠSet < Class < out ĠRealm Model >> Ġ{ Ċĉ ĉ val Ġtables Ġ= Ġmutable Set Of < Class < out ĠRealm Model >>() ĊĊĉ ĉ this . configurations . forEach Ġ{ Ċĉĉ ĉ tables . addAll ( it . realm Object Classes ) Ċĉ ĉ } ĊĊĉ ĉ return Ġtables Ċ ĉ } ĊĊ ĉ internal Ġfun Ġhas Tables (): ĠBoolean Ġ{ Ċĉ ĉ this . configurations . forEach Ġ{ Ċĉĉ ĉ if Ġ( it . realm Object Classes . isNotEmpty ()) Ġ{ Ċĉĉĉ ĉ return Ġtrue Ċĉĉ ĉ } Ċĉ ĉ } ĊĊĉ ĉ return Ġfalse Ċ ĉ } Ċ } Ċ