package Ġcom . rc orp . map ts . presenter . register Ċ Ċ import Ġcom . rc orp . map ts . UID is patch er Ċ import Ġcom . rc orp . map ts . api . repo . UserRepository Ċ import Ġcom . rc orp . map ts . api . routes . Register User Ċ import Ġcom . rc orp . map ts . model . user . User Ċ import Ġcom . rc orp . map ts . presenter . map . Map Contract Ċ import Ġkotlinx . coroutines . Global Scope Ċ import Ġkotlinx . coroutines . launch Ċ Ċ class ĠRegister Presenter Ġ{ ĊĠĠĠ Ġprivate Ġval Ġregister User : ĠRegister User Ġ= ĠRegister User ( UserRepository ()) ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġview : ĠRegister Contract . View ĊĊĠĠĠ Ġfun Ġstart ( view : ĠRegister Contract . View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . view Ġ= Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġregister User ( user : ĠUser ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġregister User . run ( user ) Ġ{ Ġresult Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGlobal Scope . launch ( UID is patch er ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . on Register Success () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . on Register Fail () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . on Register Fail () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }