package Ġcom . alg ol ia . search . model . insights Ċ Ċ import Ġcom . alg ol ia . search . exception . EmptyString Exception Ċ import Ġcom . alg ol ia . search . helper . to Event Name Ċ import Ġcom . alg ol ia . search . model . internal . Raw Ċ import Ġkotlinx . serialization . K Serializer Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġkotlinx . serialization . builtins . serializer Ċ import Ġkotlinx . serialization . descriptors . Serial Descriptor Ċ import Ġkotlinx . serialization . encoding . Decoder Ċ import Ġkotlinx . serialization . encoding . Encoder Ċ Ċ /** Ċ Ġ* Ġ[ Event Name ] Ġof Ġan Ġ[ Insights Event ]. ĠCan 't Ġbe Ġa Ġblank Ġor Ġempty Ġstring . Ċ Ġ*/ Ċ @ Serializable ( Event Name . Companion :: class ) Ċ public Ġdata Ġclass ĠEvent Name ( override Ġval Ġraw : ĠString ) Ġ: ĠRaw < String > Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( raw . isBlank ()) Ġthrow ĠEmpty String Exception (" Event Name ") ĊĠĠĠĠĠĠĠ Ġif Ġ( raw . length Ġ> Ġ 6 4 ) Ġthrow ĠIllegalArgumentException (" Event Name Ġlength Ġcan 't Ġbe Ġsuperior Ġto Ġ 6 4 Ġcharacters .") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġcompanion Ġobject Ġ: ĠK Serializer < Event Name > Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġserializer Ġ= ĠString . serializer () ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġdescriptor : ĠSerial Descriptor Ġ= Ġserializer . descriptor ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġserialize ( encoder : ĠEncoder , Ġvalue : ĠEvent Name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserializer . serialize ( encoder , Ġvalue . raw ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdeserialize ( decoder : ĠDecoder ): ĠEvent Name Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġserializer . deserialize ( decoder ). to Event Name () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ