package Ġme . j ag deep . domain . use cases Ċ Ċ import Ġio . reactivex . Comp letable Ċ import Ġme . j ag deep . domain . executor . Scheduler Provider Ċ Ċ abstract Ġclass ĠComp letable UseCase < in ĠParams > Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġscheduler Provider : ĠScheduler Provider Ċ ) Ġ{ ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġbuild UseCase ( params : ĠParams ): ĠComp letable ĊĊĠĠĠ Ġopen Ġfun Ġexecute ( params : ĠParams ): ĠComp letable Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġbuild UseCase ( params ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( scheduler Provider . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( scheduler Provider . main ()) ĊĠĠĠ Ġ} Ċ Ċ } Ċ