package Ġcom . example . authentication module . core . common . transformer Ċ Ċ class ĠDataType Transformer Registry Host Ġ: ĠI DataType Transformer Registry Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtransform ers : ĠMutable Map < String , ĠI DataType Transformer > Ġ= Ġmutable Map Of () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠRegisters Ġa Ġ[ transformer ] Ġto Ġbe Ġused Ġfor Ġthe Ġgiven Ġdata Ġsource ĊĠĠĠĠ Ġ* Ġindicated Ġby Ġthe Ġ[ dataSource Id ]. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġ Ġfun Ġregister Transformer ( dataSource Id : ĠString , Ġtransformer : ĠI DataType Transformer ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtransform ers [ dataSource Id ] Ġ= Ġtransformer ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠReturns Ġa Ġregistered Ġtransformer Ġfor Ġa Ġdata Ġsource ĊĠĠĠĠ Ġ* Ġindicated Ġby Ġthe Ġ[ dataSource Id ]. ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ throws ĠIllegalArgumentException ĠWhen Ġno Ġ[ I DataType Transformer ] Ġis Ġfound Ġfor Ġthe Ġ[ dataSource Id ]. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġget Transformer For DataSource ( dataSource Id : ĠString ): ĠI DataType Transformer Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! transformers . containsKey ( dataSource Id )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegalArgumentException (" No Ġtransformer Ġis Ġregistered Ġfor Ġdatasource Ġwith Ġid Ġ$ dataSource Id ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtransform ers [ dataSource Id ] !! ĊĠĠĠ Ġ} Ċ Ċ }