package Ġcom . j pb . lib checker . database Ċ Ċ import Ġcom . j pb . lib checker . database . entity . Rule Entity Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġkotlinx . coroutines . Global Scope Ċ import Ġkotlinx . coroutines . launch Ċ Ċ class ĠRule Repository ( private Ġval Ġrule Dao : ĠRule Dao ) Ġ{ ĊĊĠ Ġinit Ġ{ ĊĠĠĠ ĠGlobal Scope . launch ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠ Ġif Ġ( rules Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrules Ġ= ĠgetAll Rules (). as Sequence () ĊĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name Ġto Ġit ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠ Ġ. toMap () ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġsuspend Ġfun Ġget Rule ( name : ĠString ) Ġ= Ġrules ?. get ( name ) Ġ?: Ġrule Dao . get Rule ( name ) ĊĊĠ Ġsuspend Ġfun Ġinsert Rules ( rules : ĠList < Rule Entity >) Ġ{ ĊĠĠĠ Ġrule Dao . insert Rules ( rules ) ĊĠ Ġ} ĊĊĠ Ġfun Ġdelete All Rules () Ġ{ ĊĠĠĠ Ġrule Dao . delete All Rules () ĊĠ Ġ} ĊĊĠ Ġsuspend Ġfun ĠgetAll Rules () Ġ= Ġrule Dao . getAll Rules () ĊĊĠ Ġsuspend Ġfun Ġget Regex Rules () Ġ= Ġrule Dao . get Regex Rules () ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġvar Ġrules : ĠMap < String , ĠRule Entity >? Ġ= Ġnull ĊĠ Ġ} Ċ } Ċ