package Ġio . rich san . book store . utils Ċ Ċ import Ġio . rich san . book store . models . requests . Violation Ċ import Ġreactor . core . publisher . Flux Ċ import Ġreactor . core . publisher . Mono Ċ import Ġreactor . kotlin . core . publisher . to Flux Ċ import Ġkotlin . reflect . K Function 1 Ċ Ċ data Ġclass ĠParam Request ( val Ġrequired : ĠBoolean Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġviolations : ĠList < K Function 1 < String , ĠFlux < Violation >>> Ġ= ĠlistOf ()) Ġ{ ĊĠĠĠ Ġfun Ġvalidate ( value Ġ: ĠString ) Ġ: ĠFlux < Violation > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . vi olations . to Flux () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. flatMap Ġ{ Ġit ( value ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġrequired Validation ( fieldName Ġ: ĠString ) Ġ: ĠMono < Violation > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif ( required ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMono . just ( Violation ( fieldName , Ġ" Required Ġfield Ġmissing ")) ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMono . empty () ĊĠĠĠ Ġ} Ċ }