@ file : Suppress (" EXPERIMENT AL _ API _ USAGE ") Ċ Ċ package Ġmqtt . socket Ċ Ċ import Ġmqtt . buffer . Buffer Pool Ċ import Ġplatform . posix . init _ sockets Ċ import Ġkotlin . time . Experimental Time Ċ Ċ private Ġvar Ġinitialized Ġ= Ġfalse Ċ private Ġfun Ġinit Sockets () Ġ{ ĊĠĠĠ Ġif Ġ(! initialized ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinit _ sockets () ĊĠĠĠĠĠĠĠ Ġinitialized Ġ= Ġtrue ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Experimental Time Ċ actual Ġfun Ġasync Client Socket ( pool : ĠBuffer Pool ) Ġ= Ġclient Socket ( false , Ġpool ) Ċ Ċ @ Experimental Time Ċ actual Ġfun Ġclient Socket ( blocking : ĠBoolean , Ġpool : ĠBuffer Pool ): ĠClient ToServer Socket Ġ{ ĊĠĠĠ Ġinit Sockets () ĊĠĠĠ Ġreturn ĠPos ix Client ToServer Socket ( pool ) Ċ } Ċ Ċ @ Experimental Time Ċ actual Ġfun Ġasync Server Socket (): ĠServer Socket Ġ{ ĊĠĠĠ Ġinit Sockets () Ċ // ĠĠĠ Ġthrow ĠUnsupportedOperationException (" Server Ġnot Ġready Ġyet ") ĊĠĠĠ Ġreturn ĠPos ix Server Socket () Ċ } Ċ Ċ actual Ġsuspend Ġfun Ġread Stats ( port : ĠU Short , Ġcontains : ĠString ): ĠList < String > Ġ= Ġempty List () ĊĊ Ċ internal Ġfun Ġswap Bytes ( v : ĠU Short ): ĠU Short Ġ= ĊĠĠĠ Ġ((( v . toInt () Ġand Ġ 0 xFF ) Ġshl Ġ 8 ) Ġor Ġ(( v . toInt () Ġ ush r Ġ 8 ) Ġand Ġ 0 xFF )). to U Short ()