package Ġme . me li jn . me lij nb ot . database . settings Ċ Ċ import Ġme . me li jn . me lij nb ot . database . HIG HER _ CACHE Ċ import Ġme . me li jn . me lij nb ot . database . NORMAL _ CACHE Ċ import Ġme . me li jn . me lij nb ot . internals . models . Tri State Ċ Ċ class ĠAllow Sp aced Prefix Wrapper ( ĊĠĠĠ Ġprivate Ġval Ġallow Sp aced Prefix Dao : ĠAllow Sp aced Prefix Dao , ĊĠĠĠ Ġprivate Ġval Ġprivate Allow Sp aced Prefix Dao : ĠPrivate Allow Sp aced Prefix Dao Ċ ) Ġ{ ĊĊĠĠĠ Ġsuspend Ġfun Ġget Guild State ( guild Id : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġallow Sp aced Prefix Dao . getCache Entry ("$ guild Id ", ĠH IG HER _ CACHE )?. to Boolean () ĊĊĠĠĠĠĠĠĠ Ġif Ġ( result Ġ!= Ġnull ) Ġreturn Ġresult ĊĊĠĠĠĠĠĠĠ Ġval Ġallowed Ġ= Ġallow Sp aced Prefix Dao . contains ( guild Id ) ĊĠĠĠĠĠĠĠ Ġallow Sp aced Prefix Dao . set Cache Entry ( guild Id , Ġallowed , ĠNORMAL _ CACHE ) ĊĠĠĠĠĠĠĠ Ġreturn Ġallowed ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsuspend Ġfun ĠgetUser Tri State ( userId : ĠLong ): ĠTri State Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġprivate Allow Sp aced Prefix Dao . getCache Entry ("$ userId ", ĠH IG HER _ CACHE )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTri State . valueOf ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( result Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtri state Ġ= Ġprivate Allow Sp aced Prefix Dao . getState ( userId ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Allow Sp aced Prefix Dao . set Cache Entry ( userId , Ġtri state , ĠNORMAL _ CACHE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtri state ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Guild State ( guild Id : ĠLong , Ġstate : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( state ) Ġallow Sp aced Prefix Dao . add ( guild Id ) ĊĠĠĠĠĠĠĠ Ġelse Ġallow Sp aced Prefix Dao . delete ( guild Id ) ĊĠĠĠĠĠĠĠ Ġallow Sp aced Prefix Dao . set Cache Entry ( guild Id , Ġstate , ĠNORMAL _ CACHE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠsetUser State ( userId : ĠLong , Ġtri State : ĠTri State ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( tri State ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTri State . TRUE Ġ-> Ġprivate Allow Sp aced Prefix Dao . setState ( userId , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTri State . DEFAULT Ġ-> Ġprivate Allow Sp aced Prefix Dao . delete ( userId ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTri State . FALSE Ġ-> Ġprivate Allow Sp aced Prefix Dao . setState ( userId , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprivate Allow Sp aced Prefix Dao . set Cache Entry ( userId , Ġtri State . toString (), ĠNORMAL _ CACHE ) ĊĠĠĠ Ġ} Ċ }