package Ġsu . kat so . syn onym . tasks Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġorg . k oin . core . parameter . parameters Of Ċ import Ġorg . k oin . standalone . get Ċ import Ġsu . kat so . syn onym . common . app . Syn onym Activity Ċ import Ġsu . kat so . syn onym . common . arch . Base Controller Ċ import Ġsu . kat so . syn onym . common . arch . Toast Command Ċ import Ġsu . kat so . syn onym . common . entities . Task . Status Ċ import Ġsu . kat so . syn onym . common . use cases . Change Task Status UseCase Ċ import Ġsu . kat so . syn onym . common . use cases . Change Task Status UseCase . Method Ċ import Ġsu . kat so . syn onym . common . use cases . Create Task UseCase Ċ import Ġsu . kat so . syn onym . common . use cases . Get TaskList UseCase Ċ import Ġsu . kat so . syn onym . common . utils . getError Ċ import Ġsu . kat so . syn onym . tasks . adapter . Task View Object Ċ Ċ class ĠTasks Controller ( ĊĠĠĠ Ġview : ĠTasks View , Ġprivate Ġval Ġarguments : ĠBundle Ġ= ĠBundle . EMPTY Ċ ) Ġ: ĠBaseController < Tasks View , ĠTasks Model >( view , ĠTasks Model ()) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon First Bind ( view : ĠTasks View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġget TaskList () ĊĊĠĠĠĠĠĠĠ Ġarguments . getString ( Syn onym Activity . EXTRA _ URI )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsend Command ( Toast Command ( it )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ( view : ĠTasks View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbind To ( view . recycle View Item Click s ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( val Ġitem Ġ= Ġit . item ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠTask View Object Ġ-> Ġchange Task Status ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem . id , Ġif Ġ( item . status Ġ== ĠStatus . PA USED ) ĠMethod . RE SU ME Ġelse ĠMethod . PAUSE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind To ( view . floating Button Click s ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Task (" mag net ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcreate Task ( uri : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġget < Create Task UseCase > Ġ{ Ġparameters Of ( uri ) Ġ}. interact Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonStart Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĠisLoading Ġ= Ġtrue Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonSuccess Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠisLoading Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtasks Ġ= Ġit . tasks . map (:: Task View Object ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonError Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġerror Ġ= Ġit . getError () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerror ?. let Ġ{ Ġsend Command ( Toast Command ( it . toString ())) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġrun Ġ{ Ġsend Command ( Toast Command ( it . message . or Empty ())) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĠisLoading Ġ= Ġfalse Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġchange Task Status ( id : ĠString , Ġmethod : ĠMethod ) Ġ{ ĊĠĠĠĠĠĠĠ Ġget < Change Task Status UseCase > Ġ{ Ġparameters Of ( id , Ġmethod ) Ġ}. interact Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonStart Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĠisLoading Ġ= Ġtrue Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonSuccess Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠisLoading Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtasks Ġ= Ġit . tasks . map (:: Task View Object ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonError Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġerror Ġ= Ġit . getError () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerror ?. let Ġ{ Ġsend Command ( Toast Command ( it . toString ())) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġrun Ġ{ Ġsend Command ( Toast Command ( it . message . or Empty ())) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĠisLoading Ġ= Ġfalse Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget TaskList () Ġ{ ĊĠĠĠĠĠĠĠ Ġget < Get TaskList UseCase >(). interact Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonStart Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĠisLoading Ġ= Ġtrue Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Next Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠisLoading Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtasks Ġ= Ġit . tasks . map (:: Task View Object ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠonError Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġerror Ġ= Ġit . getError () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerror ?. let Ġ{ Ġsend Command ( Toast Command ( it . toString ())) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġrun Ġ{ Ġsend Command ( Toast Command ( it . message . or Empty ())) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodify State Ġ{ ĠisLoading Ġ= Ġfalse Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }