package Ġplay w rig kt . sk ript . tro upe Ċ Ċ import Ġcom . rabbitmq . client . AM QP Ċ import Ġcom . rabbitmq . client . Connection Ċ import Ġplay w rig kt . sk ript . coroutine . run Async Ċ import Ġplay w rig kt . sk ript . perform er . A mq p Publish Perform er Ċ import Ġplay w rig kt . sk ript . result . AsyncResult Ċ Ċ data Ġclass ĠA mq p Publish Tro upe ( val Ġexchange : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconnection : ĠConnection , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbasic Properties : ĠAMQP . Basic Properties ): ĠQueue Publish Tro upe Ġ{ ĊĠĠĠ Ġval Ġperform er : ĠAsync Result < A mq p Publish Perform er > Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġrun Async Ġ{ ĠA mq p Publish Perform er ( exchange , Ġconnection . create Channel (), Ġbasic Properties ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Publish Perform er (): ĠAsync Result < A mq p Publish Perform er > Ġ= Ġperform er Ċ }