package Ġno . nav . person br uk er . dit tn av . api . done Ċ Ċ import Ġio . ktor . application .* Ċ import Ġio . ktor . client . statement .* Ċ import Ġio . ktor . request .* Ċ import Ġio . ktor . response .* Ċ import Ġio . ktor . routing .* Ċ import Ġio . ktor . util . pipeline .* Ċ import Ġno . nav . person br uk er . dit tn av . api . config . authenticated User Ċ import Ġno . nav . person br uk er . dit tn av . api . config . execute On Un expired Tokens Only Ċ Ċ fun ĠRoute . done Api ( done Producer : ĠDone Producer ) Ġ{ ĊĊĠĠĠ Ġpost ("/ produce / done ") Ġ{ ĊĠĠĠĠĠĠĠ Ġexecute On Un expired Tokens Only Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrespond For ParameterType < Done DTO > Ġ{ Ġdone Dto Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġdone Producer . post Done Events ( done Dto , Ġauthenticated User ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ suspend Ġinline Ġfun Ġ< re ified ĠT Ġ: ĠAny > ĠPipeline Context < Unit , ĠApplication Call >. respond For ParameterType ( handler : Ġ( T ) Ġ-> ĠHttpResponse ) Ġ{ ĊĠĠĠ Ġval Ġpost Parameters Dto : ĠT Ġ= Ġcall . receive () ĊĠĠĠ Ġval ĠhttpResponse Ġ= Ġhandler . invoke ( post Parameters Dto ) ĊĠĠĠ Ġcall . respond ( httpResponse . status ) Ċ } Ċ