package Ġbr . gio v ann ic ur iel . kafka . listener Ċ Ċ import Ġbr . gio v ann ic ur iel . kafka . Dog A do ption Event Ċ import Ġorg . apache . kafka . clients . admin . New Topic Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġorg . springframework . context . annotation . Bean Ċ import Ġorg . springframework . kafka . config . Topic Builder Ċ import Ġorg . springframework . kafka . core . Kafka Template Ċ import Ġorg . springframework . stereotype . Service Ċ Ċ @ Service Ċ class ĠProducer ( ĊĠĠĠ Ġ@ Value ("\ ${ kafka . dog _ topic }") ĊĠĠĠ Ġprivate Ġval Ġtopic Name : ĠString , ĊĠĠĠ Ġprivate Ġval Ġtemplate : ĠKafka Template < String , ĠDog A do ption Event > Ċ ){ ĊĊĠĠĠ Ġfun Ġsend ( request : ĠDog A do ption Event ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln ("[ producer ] ĠSending Ġa do ption Ġevent Ġfor Ġdog Ġ${ request . payload . dog . name . toString () }") ĊĠĠĠĠĠĠĠ Ġtemplate . send ( topic Name , Ġrequest . payload . dog . name . toString (), Ġrequest ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġtopic Example (): ĠNew Topic Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠTopic Builder . name ( topic Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. partitions ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (); ĊĠĠĠ Ġ} Ċ } Ċ