/* ĠCopyright Ġ 2 0 2 1 ĠBetter ĠLtd Ġ( www . better . care ) Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcare . better . platform . web . template . converter . flat Ċ Ċ import Ġcare . better . open e hr . rm . Rm Object Ċ import Ġcare . better . platform . web . template . Web Template Ċ import Ġcare . better . platform . web . template . converter . flat . context . Flat Mapping Context Ċ import Ġcare . better . platform . web . template . converter . flat . mapper . Rm Object To Flat Mapper Deleg ator Ċ import Ġcare . better . platform . web . template . converter . value . Simple Value Converter Ċ import Ġcare . better . platform . web . template . builder . model . Web Template Node Ċ import Ġorg . open e hr . rm . composition . Composition Ċ Ċ /** Ċ Ġ* Ġ@ author ĠPri moz ĠDe lop st Ċ Ġ* Ġ@ since Ġ 3 . 1 . 0 Ċ Ġ* Ċ Ġ* ĠInstance Ġof Ġ[ Abstract Raw To Flat Converter ] Ġthat Ġconverts Ġthe ĠRM Ġobject Ġin ĠRAW Ġformat Ġto Ġthe ĠRM Ġobject Ġin ĠFL AT Ġformat . Ċ Ġ* Ċ Ġ* Ġ@ constructor ĠCreates Ġa Ġnew Ġinstance Ġof Ġ[ Raw To Flat Converter ] Ċ Ġ*/ Ċ internal Ġclass ĠRaw To Flat Converter Ġ: ĠAbstract Raw To Flat Converter < Any >() Ġ{ ĊĠĠĠ Ġprivate Ġval Ġflat Conversion Context : ĠFlat Mapping Context Ġ= ĠFlat Mapping Context () ĊĊĠĠĠ Ġoverride Ġfun Ġconvert ( web Template : ĠWeb Template , Ġcomposition : ĠComp osition ): ĠMap < String , ĠAny > Ġ{ ĊĠĠĠĠĠĠĠ Ġmap ( web Template . tree , Ġcomposition , Ġweb Template . tree . json Id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġflat Conversion Context . get () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġ< R Ġ: ĠR m Object > Ġconvert For A ql Path ( web Template : ĠWeb Template , Ġa ql Path : ĠString , Ġrm Object : ĠR ): ĠMap < String , ĠAny > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġweb Template Node Ġ= Ġweb Template . find Web Template Node By A ql Path ( a ql Path ) ĊĠĠĠĠĠĠĠ Ġmap ( web Template Node , Ġrm Object , Ġweb Template Node . json Id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġflat Conversion Context . get () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġ< R Ġ: ĠR m Object > Ġconvert For Web Template Path ( web Template : ĠWeb Template , Ġweb Template Path : ĠString , Ġrm Object : ĠR ): ĠMap < String , ĠAny > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġweb Template Node Ġ= Ġweb Template . find Web Template Node ( web Template Path ) ĊĠĠĠĠĠĠĠ Ġmap ( web Template Node , Ġrm Object , Ġweb Template Node . json Id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġflat Conversion Context . get () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġ< R Ġ: ĠR m Object > Ġmap Rm Object ( web Template Node : ĠWeb Template Node , Ġrm Object : ĠR , Ġweb Template Path : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠR m Object To Flat Mapper Deleg ator . delegate ( web Template Node , ĠSimple Value Converter , Ġrm Object , Ġweb Template Path , Ġflat Conversion Context ) ĊĠĠĠ Ġ} Ċ } Ċ