package Ġcom . j ash more . sqs . core . kotlin . dsl . container Ċ Ċ import Ġcom . j ash more . sqs . Queue Properties Ċ import Ġcom . j ash more . sqs . container . Message Listener Container Ċ import Ġcom . j ash more . sqs . core . kotlin . dsl . Message Listener Component Dsl Builder Ċ import Ġcom . j ash more . sqs . core . kotlin . dsl . Message Processor Dsl Builder Ċ import Ġcom . j ash more . sqs . core . kotlin . dsl . processor . Async Lambda Message Processor Dsl Builder Ċ import Ġcom . j ash more . sqs . core . kotlin . dsl . processor . Core Message Processor Dsl Builder Ċ import Ġcom . j ash more . sqs . core . kotlin . dsl . processor . Lambda Message Processor Dsl Builder Ċ import Ġcom . j ash more . sqs . processor . Async Lambda Message Processor Ċ import Ġcom . j ash more . sqs . processor . Core Message Processor Ċ import Ġcom . j ash more . sqs . processor . Lambda Message Processor Ċ import Ġcom . j ash more . sqs . processor . Message Processor Ċ import Ġsoftware . amazon . aw ssdk . services . sqs . S qs Async Client Ċ Ċ /** Ċ Ġ* ĠAbstract Ġclass Ġfor Ġbuilding Ġa Ġ[ Message Listener Container ] Ġthat Ġallows Ġthe Ġimplement er Ġto Ġuse Ġtheir Ġown Ġ[ Message Listener Container ] Ġimplementation . Ċ Ġ* Ċ Ġ* Ġ< p > This Ġonly Ġprovides Ġaccess Ġto Ġthe Ġprocessor Ġobject Ċ Ġ*/ Ċ abstract Ġclass ĠAbstract Message Listener Container Dsl Builder ( val Ġidentifier : ĠString , Ġval Ġsq s Async Client : ĠS qs Async Client , Ġval Ġqueue Properties : ĠQueue Properties ) Ġ: ĊĠĠĠ ĠMessage Listener Component Dsl Builder < Message Listener Container > Ġ{ ĊĠĠĠ Ġvar Ġprocessor : ĠMessage Processor Dsl Builder ? Ġ= Ġnull ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUse Ġthe Ġ[ Core Message Processor ] Ġas Ġthe Ġ[ Message Processor ] Ġin Ġthis Ġcontainer . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠUsage : ĊĠĠĠĠ Ġ* Ġ``` kotlin ĊĠĠĠĠ Ġ* Ġval Ġcontainer Ġ= Ġcore Message Listener (" identifier ", Ġsq s Async Client , Ġqueue Url ) Ġ{ ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġprocessor Ġ= Ġcore Processor Ġ{ ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠ Ġ// Ġconfigure Ġhere ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġ} ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġ// Ġother Ġconfiguration ĊĠĠĠĠ Ġ* Ġ} ĊĠĠĠĠ Ġ* Ġ``` ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġinit Ġthe ĠDSL Ġfunction Ġfor Ġconfiguring Ġthis Ġprocessor ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġcore Processor ( init : ĠCore Message Processor Dsl Builder . () Ġ-> ĠUnit ) Ġ= ĊĠĠĠĠĠĠĠ Ġcom . j ash more . sqs . core . kotlin . dsl . processor . core Processor ( identifier , Ġsq s Async Client , Ġqueue Properties , Ġinit ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUse Ġthe Ġ[ Lambda Message Processor ] Ġas Ġthe Ġ[ Message Processor ] Ġin Ġthis Ġcontainer . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠUsage : ĊĠĠĠĠ Ġ* Ġ``` kotlin ĊĠĠĠĠ Ġ* Ġval Ġcontainer Ġ= Ġcore Message Listener (" identifier ", Ġsq s Async Client , Ġqueue Url ) Ġ{ ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġprocessor Ġ= Ġlambda Processor Ġ{ Ġmessage Ġ-> ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠ Ġ// Ġdo Ġmessage Ġprocessing Ġhere ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġ} ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġ// Ġother Ġconfiguration ĊĠĠĠĠ Ġ* Ġ} ĊĠĠĠĠ Ġ* Ġ``` ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġlambda Processor ( init : ĠLambda Message Processor Dsl Builder . () Ġ-> ĠUnit ) Ġ= ĊĠĠĠĠĠĠĠ Ġcom . j ash more . sqs . core . kotlin . dsl . processor . lambda Processor ( identifier , Ġsq s Async Client , Ġqueue Properties , Ġinit ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUse Ġthe Ġ[ Async Lambda Message Processor ] Ġas Ġthe Ġ[ Message Processor ] Ġin Ġthis Ġcontainer . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠUsage : ĊĠĠĠĠ Ġ* Ġ``` kotlin ĊĠĠĠĠ Ġ* Ġval Ġcontainer Ġ= Ġcore Message Listener (" identifier ", Ġsq s Async Client , Ġqueue Url ) Ġ{ ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġprocessor Ġ= Ġasync Lambda Processor Ġ{ Ġmessage Ġ-> ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠ Ġ// Ġdo Ġmessage Ġprocessing Ġhere ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠ Ġreturn ĠCompletableFuture . completed Future ( null ); ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġ} ĊĠĠĠĠ Ġ* ĠĠĠĠ Ġ// Ġother Ġconfiguration ĊĠĠĠĠ Ġ* Ġ} ĊĠĠĠĠ Ġ* Ġ``` ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġasync Lambda Processor ( init : ĠAsync Lambda Message Processor Dsl Builder . () Ġ-> ĠUnit ) Ġ= ĊĠĠĠĠĠĠĠ Ġcom . j ash more . sqs . core . kotlin . dsl . processor . async Lambda Processor ( identifier , Ġsq s Async Client , Ġqueue Properties , Ġinit ) Ċ } Ċ