package Ġcom . prof 1 8 . money flow . presentation Ċ Ċ import Ġcom . prof 1 8 . money flow . domain . entities . Money Flow Error Ċ import Ġcom . prof 1 8 . money flow . domain . entities . Money Transaction Ċ import Ġcom . prof 1 8 . money flow . presentation . all transactions . All Transactions UseCase Ċ import Ġcom . prof 1 8 . money flow . presentation . model . UI ErrorMessage Ċ import Ġcom . prof 1 8 . money flow . utils . log Error Ċ import Ġkotlinx . coroutines . launch Ċ Ċ class ĠAll Transactions UseCase I os ( ĊĠĠĠ Ġprivate Ġval Ġall Transactions UseCase : ĠAll Transactions UseCase , ĊĠĠĠ Ġprivate Ġval Ġerror Mapper : ĠMoney Flow Error Mapper Ċ ) Ġ: ĠBase UseCase I os () Ġ{ ĊĊĠĠĠ Ġfun Ġget Transactions Pag inated ( ĊĠĠĠĠĠĠĠ Ġpage Num : ĠLong , ĊĠĠĠĠĠĠĠ ĠpageSize : ĠLong , ĊĠĠĠĠĠĠĠ ĠonSuccess : Ġ( List < Money Transaction >) Ġ-> ĠUnit , ĊĠĠĠĠĠĠĠ ĠonError : Ġ( UI ErrorMessage ) Ġ-> ĠUnit , ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġscope . launch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġall Transactions UseCase . get Transactions Pag inated ( pageNum , ĠpageSize ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonSuccess ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( throwable : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġerror Ġ= ĠMoney Flow Error . GetAll Transaction ( throwable ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrowable . log Error ( error ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠerrorMessage Ġ= Ġerror Mapper . get UI ErrorMessage ( error ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonError ( errorMessage ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }