package Ġbr . com . z up . factory Ċ Ċ import Ġbr . com . z up . dto . request . Key Request ById Dto Ċ import Ġbr . com . z up . repository . Bank Repository Ċ import Ġbr . com . z up . repository . Pix Key Repository Ċ import Ġbr . com . z up . service . B cb Client Ċ import Ġbr . com . z up . service . Pix Id And ClientId Parser Ċ import Ġbr . com . z up . service . Pix Key Parser Ċ import Ġio . mic ronaut . validation . Validated Ċ import Ġjavax . inject . Inject Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Singleton Ċ @ Validated Ċ class ĠRetrieve Pix Key Factory ( ĊĠĠĠ Ġ@ Inject Ġval Ġrepository : ĠP ix Key Repository , ĊĠĠĠ Ġ@ Inject Ġval Ġb cb Client : ĠB cb Client , ĊĠĠĠ Ġ@ Inject Ġval Ġbank Repository : ĠBank Repository Ċ ) Ġ: ĊĠĠĠ ĠKey Parser Factory Ġ{ ĊĊĠĠĠĠ Ġoverride Ġfun Ġcreate From Request ( key Request ById : ĠKey Request ById Dto ?): ĠKey Parser Ġ{ ĊĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( if Ġ( key Request ById ?. clientId . isNull OrEmpty () Ġ|| Ġkey Request ById ?. clientId Ġ== Ġ" 0 ") Ġ" Pix Key " Ġelse Ġ" Pix Id ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Pix Key " Ġ-> ĠP ix Key Parser ( repository , Ġb cb Client , Ġbank Repository ) ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Pix Id " Ġ-> ĠP ix Id And ClientId Parser ( repository , Ġb cb Client , Ġbank Repository ) ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠException (" Tipo Ġde Ġconsulta Ġdes con he c ido .") ĊĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }