package Ġnet . z om is . games . server 2 Ċ Ċ import Ġcom . fasterxml . jackson . databind . ObjectMapper Ċ import Ġk log . K Log gers Ċ import Ġnet . z om is . games . Features Ċ import Ġnet . z om is . games . server 2 . inv ites . Client Inter esting Games Ċ import Ġjava . util . UUID Ċ Ċ fun ĠCollection < Client >. send ( data : ĠMap < String , ĠAny ?> ) Ġ{ ĊĠĠĠ Ġval Ġtext Ġ= ĠClient . mapper . writeValue AsString ( data ) ĊĠĠĠ Ġthis . forEach Ġ{ Ġcl Ġ-> Ġcl . send Data ( text ) Ġ} Ċ } Ċ Ċ type alias ĠPlayer Id Ġ= ĠUUID Ċ Ċ open Ġclass ĠClient Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmapper Ġ= ĠObjectMapper () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġname : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġplayer Id : ĠPlayer Id ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġinteresting Games Ġ= ĠClient Inter esting Games ( empty Set (), Ġ 0 , Ġmutable Set Of ()) ĊĊĠĠĠ Ġfun Ġconnected () Ġ{} ĊĊĠĠĠ Ġfun Ġdisconnected () Ġ{} ĊĊĠĠĠ Ġfun Ġsend ( obj : ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġmapper . writeValue AsString ( obj ) ĊĠĠĠĠĠĠĠ Ġsend Data ( text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun Ġsend Data ( data : ĠString ) Ġ{} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ"${ this . java Class . name }: ($ player Id /$ name )" ĊĠĠĠ Ġ} Ċ Ċ } Ċ