package Ġjp . k ale id ot 7 2 5 . orbit . domain . use case Ċ Ċ import Ġjp . k ale id ot 7 2 5 . orbit . data . repository . Config Repository Ċ import Ġjp . k ale id ot 7 2 5 . orbit . data . repository . Pokemon Repository Ċ Ċ class ĠFetch All Pokemon UseCase ( ĊĠĠĠ Ġprivate Ġval Ġpokemon Repository : ĠPokemon Repository , ĊĠĠĠ Ġprivate Ġval Ġconfig Repository : ĠConfig Repository Ċ ) Ġ{ ĊĠĠĠ Ġsuspend Ġoperator Ġfun Ġinvoke (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ(! config Repository . created Database ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpokemon Repository . clear () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpokemon Repository . fetch (). apply Ġ{ Ġconfig Repository . created Database Ġ= Ġthis Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ