/* Ċ Ġ* Ġ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 Ċ Ġ* Ċ Ġ* Ġ Ġhttps :// 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 . Ċ Ġ* Ċ Ġ* ĠOther Ġlicenses : Ċ Ġ* Ġ----------------------------------------------------------------------------- Ċ Ġ* ĠCom mercial Ġlicenses Ġfor Ġthis Ġwork Ġare Ġavailable . ĠThese Ġreplace Ġthe Ġabove Ċ Ġ* ĠAS L Ġ 2 . 0 Ġand Ġoffer Ġlimited Ġwarr ant ies , Ġsupport , Ġmaintenance , Ġand Ġcommercial Ċ Ġ* Ġdatabase Ġintegr ations . Ċ Ġ* Ċ Ġ* ĠFor Ġmore Ġinformation , Ġplease Ġvisit : Ġhttp :// www . jooq . org / licenses Ċ Ġ*/ Ċ Ċ package Ġio . os gu ima 3 . jooq dsl . plugin . context Ċ Ċ import Ġio . os gu ima 3 . jooq dsl . model . context . Model Context Ċ import Ġio . os gu ima 3 . jooq dsl . model . context . Tables Context Ċ import Ġorg . jooq . codegen . Generation Tool Ċ import Ġorg . jooq . meta . jax b . Configuration Ċ import Ġorg . jooq . meta . jax b . For ced Type Ċ import Ġkotlin . reflect . K Class Ċ Ċ class ĠModel Context Impl ( private Ġval Ġconfiguration : ĠConfiguration ) Ġ: ĠModel Context , ĠJ oo q Context Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtables Context Ġ= ĠTables Context Impl ( this ) ĊĊĠĠĠ Ġprivate Ġval Ġforced Types Ġ= Ġconfiguration . generator . database . forced Types ĊĊĠĠĠ Ġoverride Ġval Ġtarget Package : ĠString Ġ= Ġconfiguration . generator . target . packageName ĊĊĠĠĠ Ġoverride Ġfun Ġtables ( configure : ĠTables Context . () Ġ-> ĠUnit ) Ġ= Ġtables Context . configure () ĊĊĠĠĠ Ġoverride Ġfun Ġregister For ced Type ( expression : ĠString , Ġuser Type : ĠK Class <* >, Ġconverter : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġforced Types Ġ+= ĠFor ced Type (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . expression Ġ= Ġexpression ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . user Type Ġ= Ġuser Type . qualified Name ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . converter Ġ= Ġconverter ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinternal Ġfun Ġgenerate ( configure : ĠModel Context . () Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġconfigure () ĊĠĠĠĠĠĠĠ ĠGeneration Tool (). run ( configuration ) ĊĠĠĠ Ġ} Ċ } Ċ