package Ġxyz . team gravity . al if tech . data . repository Ċ Ċ import Ġxyz . team gravity . al if tech . data . local . dao . Event Dao Ċ import Ġxyz . team gravity . al if tech . data . local . dto . Event Local Dto Ċ import Ġxyz . team gravity . al if tech . data . remote . api . Event Api Ċ import Ġxyz . team gravity . al if tech . data . remote . dto . Event Response Dto Ċ import Ġxyz . team gravity . al if tech . domain . repository . Event Repository Ċ Ċ class ĠEvent Repository Impl ( ĊĠĠĠ Ġprivate Ġval Ġapi : ĠEvent Api , ĊĠĠĠ Ġprivate Ġval Ġdao : ĠEvent Dao Ċ ) Ġ: ĠEvent Repository Ġ{ ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġinsert All Events Local ( events : ĠList < Event Local Dto >) Ġ{ ĊĠĠĠĠĠĠĠ Ġdao . insert All ( events ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġdelete All Events Local () Ġ{ ĊĠĠĠĠĠĠĠ Ġdao . delete All () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġget Events Remote (): ĠEvent Response Dto Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġapi . get Events () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġget Events Local (): ĠList < Event Local Dto > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdao . get Events () ĊĠĠĠ Ġ} Ċ }