package Ġcom . lab ij ie . infra . mq ts . kafka Ċ Ċ import Ġcom . lab ij ie . infra . mq ts . configuration . Queue Config Ċ import Ġorg . apache . kafka . clients . Common Client Configs Ċ import Ġorg . apache . kafka . clients . consumer . Consumer Config Ċ import Ġorg . apache . kafka . clients . producer . Producer Config Ċ import Ġjava . util .* Ċ Ċ private Ġfun ĠQueue Config . load Config ( prefix : ĠString , Ġconfig Keys : ĠSet < String >): ĠProperties Ġ{ ĊĠĠĠ Ġval Ġproperties Ġ= ĠProperties () ĊĠĠĠ Ġthis . properties . forEach Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= Ġit . value . toString () ĊĠĠĠĠĠĠĠ Ġif ( v . isNotBlank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it . key Ġin Ġconfig Keys ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperties . setProperty ( it . key , Ġv ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( it . key . startsWith ( prefix )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġk Ġ= Ġit . key . remove Prefix ( prefix ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( k Ġin Ġconfig Keys ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperties . setProperty ( k , Ġv ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġif Ġ( this . server . isNotBlank ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġproperties [ Common Client Configs . BOOT STR AP _ SERVER S _ CONFIG ] Ġ= Ġthis . server ĊĠĠĠ Ġ} ĊĠĠ Ġreturn Ġproperties Ċ } Ċ Ċ fun ĠQueue Config . load Kafka Consumer Config () Ġ= Ġthis . load Config (" consumer .", ĠConsumer Config . config Names ()) Ċ Ċ fun ĠQueue Config . load Kafka Producer Config () Ġ= Ġthis . load Config (" producer .", ĠProducer Config . config Names ())