package Ġcom . lab ij ie . infra . mq ts . discovery . ack Ċ Ċ import Ġcom . lab ij ie . infra . mq ts . Transaction Source Attribute Ċ import Ġcom . lab ij ie . infra . mq ts . ab stractions . IA ck Server Ċ import Ġcom . lab ij ie . infra . mq ts . ack . Ack Request Ċ import Ġjava . net . URI Ċ Ċ /** Ċ Ġ* ĠCreated Ġwith ĠIntelliJ ĠIDEA . Ċ Ġ* Ġ@ author ĠAnd ers ĠX iao Ċ Ġ* Ġ@ date Ġ 2 0 1 9 - 0 3 - 0 9 Ċ Ġ*/ Ċ class ĠDiscovery Ack Server ( private Ġval Ġapplication Name : String ): ĠI Ack Server Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġname : ĠString Ġ= Ġ" discovery Ġack " ĊĊĠĠĠ Ġval Ġintercept ors : Mutable Set <( context : ĠAck Request ) Ġ-> ĠUnit > Ġ= Ġmutable Set Of () ĊĊĠĠĠ Ġoverride Ġfun Ġstartup ( sources : ĠCollection < Transaction Source Attribute >) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġregister Interceptor ( interceptor : Ġ( context : ĠAck Request ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġintercept ors . add ( interceptor ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Ack Address (): ĠURI Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠURI (" discovery :// $ application Name ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshutdown () Ġ{ ĊĠĠĠ Ġ} Ċ }