package Ġcom . w car mon . codegen . model Ċ Ċ import Ġcom . fasterxml . jackson . annotation . JsonValue Ċ Ċ /** Ċ Ġ* ĠDetermines Ġwhether Ġto Ġgenerate Ġ 1 Ġor Ġmultiple Ġoutput Ġfiles Ċ Ġ*/ Ċ enum Ġclass ĠOutput Mode ( ĊĠ Ġ@ JsonValue ĊĠ Ġval Ġserialized : ĠString , Ċ ) Ġ{ ĊĊĠ Ġ/** ĠGenerate Ġfile Ġper Ġentity Ġ( in Ġa Ġdirectory ) Ġ*/ ĊĠ ĠFILE _ PER _ ENTITY (" multiple "), ĊĊĠ Ġ/** ĠGenerate Ġone Ġfile Ġ( possibly Ġcontaining Ġmultiple Ġentities ) Ġ*/ ĊĠ ĠS INGLE _ FILE (" single "); ĊĊĠ Ġinit Ġ{ ĊĠĠĠ Ġrequire ( serialized . isNotBlank ()) Ġ{ Ġ" serialized Ġvalue Ġis Ġrequired " Ġ} ĊĠ Ġ} ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġparse ( input : ĠString ): ĠOutput Mode Ġ{ ĊĠĠĠĠĠ Ġval Ġnormalized Ġ= Ġinput . trim () ĊĊĠĠĠĠĠ Ġreturn Ġvalues (). first OrNull Ġ{ ĊĠĠĠĠĠĠĠ Ġnormalized . equals ( it . name , Ġignore Case Ġ= Ġtrue ) Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnormalized . equals ( it . toString (), Ġignore Case Ġ= Ġtrue ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ?: Ġthrow ĠIllegalArgumentException (" Failed Ġto Ġparse ĠOutput Mode : Ġinput =$ input ") ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ