package Ġorg . kotlin academy . mobile Ċ Ċ import Ġorg . kotlin academy . DateTime Ċ import Ġorg . kotlin academy . common . delay Ċ import Ġorg . kotlin academy . data . Feedback Ċ import Ġorg . kotlin academy . data . Firebase TokenType Ċ import Ġorg . kotlin academy . data . News Ċ import Ġorg . kotlin academy . data . News Data Ċ import Ġorg . kotlin academy . resp ositor ies . Feedback Repository Ċ import Ġorg . kotlin academy . resp ositor ies . News Repository Ċ import Ġorg . kotlin academy . resp ositor ies . Notification Repository Ċ import Ġkotlinx . coroutines . experimental . android . UI Ġas ĠAndroid UI Ċ Ċ fun ĠsetUp Server () Ġ{ ĊĠĠĠ ĠNews Repository . override Ġ= Ġobject Ġ: ĠNews Repository Ġ{ ĊĠĠĠĠĠĠĠ Ġsuspend Ġoverride Ġfun Ġget News Data (): ĠNews Data Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdelay ( 1 0 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnews Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNews ( 5 , Ġ" Program mer Ġdictionary : ĠReceiver Ġtype Ġvs ĠReceiver Ġobject ", Ġ" In Ġprevious Ġpart Ġwe âĢĻ ve Ġalready Ġdescribed Ġdifference Ġbetween Ġobject Ġand Ġtype . ĠSimilar Ġdifferent iation Ġis Ġused Ġfor Ġreceiv ers Ġin Ġextension âĢ¦ ", Ġ" https :// cdn - images - 1 . medium . com / max / 6 4 0 / 0 * u G bd HQ l U 2 q yf 0 VK A . jpg ", Ġ" https :// blog . kotlin - academy . com / program mer - dictionary - receiver - type - vs - receiver - object - 5 7 5 d 2 7 0 5 ddd 9 ", ĠDateTime ( 1 5 1 3 2 3 3 1 7 9 0 0 0 )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNews ( 4 , Ġ" Architecture Ġfor ĠMulti platform Ġnative Ġdevelopment Ġin ĠKotlin ", Ġ" My Ġment or Ġwas Ġoften Ġsaying ĠâĢľ If Ġyou Ġare Ġusing ĠCtrl - C ĠCtrl - V Ġin Ġa Ġsingle Ġproject , Ġyou Ġare Ġdoing Ġsomething Ġwrong âĢĿ. ĠThis Ġsentence Ġgot Ġdee ply âĢ¦ ", Ġ" https :// cdn - images - 1 . medium . com / max / 6 4 0 / 0 * q Z fg AQ 8 us 1 w 9 z 3 Z 9 .", Ġ" https :// blog . kotlin - academy . com / architecture - for - multi platform - development - in - kotlin - cc 7 7 0 f 4 ab dfd ", ĠDateTime ( 1 5 1 2 9 7 3 7 6 5 0 0 0 )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNews ( 3 , Ġ" Program mer Ġdictionary : ĠExtension Ġreceiver Ġvs ĠDispatch Ġreceiver ", Ġ" Extension Ġreceiver Ġis Ġthe Ġreceiver Ġthat Ġis Ġclosely Ġrelated Ġto ĠKotlin Ġextensions . ĠIt Ġrepresents Ġan Ġobject Ġthat Ġwe Ġdefine Ġan Ġextension Ġfor .", Ġ" https :// cdn - images - 1 . medium . com / max / 6 4 0 / 1 * RB nt J 9 Iv hd 4 ZW 4 K - q QS j PQ . jpeg ", Ġ" https :// blog . kotlin - academy . com / program mer - dictionary - extension - receiver - vs - dispatch - receiver - cd 1 5 4 e 5 7 e 2 7 7 ", ĠDateTime ( 1 5 1 2 6 2 6 5 9 9 0 0 0 )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNews ( 2 , Ġ" Less ons Ġfrom Ġmy Ġfirst Ġmulti platform ĠKotlin Ġproject ", Ġ" I Ġhave Ġjust Ġfinished ĠKotlin Ġmulti platform Ġproject Ġwith Ġ 3 Ġdifferent Ġclients :", Ġ" https :// cdn - images - 1 . medium . com / max / 6 4 0 / 0 * QC q R jz Cc _ QP ux 8 C 7 . png ", Ġ" https :// blog . kotlin - academy . com / lessons - from - my - first - multi platform - kotlin - project - d 4 e 3 1 1 f 1 5 8 7 4 ", ĠDateTime ( 1 5 1 2 3 6 6 0 9 7 0 0 0 )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNews ( 1 , Ġ" Program mer Ġdictionary : ĠImp licit Ġreceiver Ġvs Ġexplicit Ġreceiver ", Ġ" The Ġconcept Ġof Ġreceiv ers Ġwas Ġpreviously Ġexplained , Ġso Ġmake Ġsure Ġyou Ġknow Ġwhat Ġreceiver Ġis Ġbefore Ġreading Ġfurther .", Ġ" https :// cdn - images - 1 . medium . com / max / 6 4 0 / 1 * X 1 Qc X 6 5 - i UG tB Wy 2 yw 3 0 2 g . jpeg ", Ġ" https :// blog . kotlin - academy . com / program mer - dictionary - implicit - receiver - vs - explicit - receiver - da 6 3 8 de 3 1 f 3 c ", ĠDateTime ( 1 5 1 2 0 2 1 6 4 8 0 0 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠNews Data ( news Ġ= Ġnews ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠFeedback Repository . override Ġ= Ġobject Ġ: ĠFeedback Repository Ġ{ ĊĠĠĠĠĠĠĠ Ġsuspend Ġoverride Ġfun Ġadd Comment ( feedback : ĠFeedback ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdelay ( 1 0 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġno - op ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠNotification Repository . override Ġ= Ġobject Ġ: ĠNotification Repository Ġ{ ĊĠĠĠĠĠĠĠ Ġsuspend Ġoverride Ġfun Ġregister Token ( token : ĠString , Ġtype : ĠFirebase TokenType ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdelay ( 1 0 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġno - op ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }