/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 6 / 2 0 2 0 ĠL it ote Ċ Ġ* Ċ Ġ* Ġ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 Ġorg . lit ote . km ongo . model Ċ Ċ import Ġorg . lit ote . jackson . data . Jack son Data Ċ import Ġorg . lit ote . km ongo . Id Ċ import Ġorg . lit ote . km ongo . model . other . Simple Referenced Data Ċ import Ġorg . lit ote . km ongo . new Id Ċ import Ġjava . util . Date Ċ import Ġjava . util . Locale Ċ Ċ /** Ċ Ġ* Ċ Ġ*/ Ċ @ Jack son Data Ċ open Ġclass ĠTest Data ( ĊĠĠĠ Ġval Ġset : ĠSet < Simple Referenced Data > Ġ= Ġempty Set (), ĊĠĠĠ Ġval Ġlist : ĠList < List < Boolean >> Ġ= Ġempty List (), ĊĠĠĠ Ġ// TODO Ġsupport Ġnullable Ġgeneric ĊĠĠĠ Ġ// val Ġnullable List : ĠList < List < Boolean ? >> Ġ= Ġempty List (), ĊĠĠĠ Ġval Ġname : ĠString ? Ġ= Ġnull , ĊĠĠĠ Ġval Ġdate : ĠDate ? Ġ= Ġnull , ĊĠĠĠ Ġval Ġreferenced : ĠSimple Referenced Data ? Ġ= Ġnull , ĊĠĠĠ Ġval Ġmap : ĠMap < Id < Locale >, ĠSet < String >> Ġ= Ġempty Map (), ĊĠĠĠ Ġval Ġmap 2 : ĠMap < Locale , ĠSimple Referenced 2 Data > Ġ= Ġempty Map (), ĊĠĠĠ Ġval Ġnullable Float : ĠFloat ? Ġ= Ġnull , ĊĠĠĠ Ġval Ġnullable Boolean : ĠBoolean ? Ġ= Ġnull , ĊĠĠĠ Ġprivate Ġval Ġprivate Data : ĠString Ġ= Ġ"", ĊĠĠĠ Ġval Ġid : ĠId < out ĠAny ?> Ġ= Ġnew Id (), ĊĠĠĠ Ġval ĠbyteArray : ĠByteArray ? Ġ= Ġnull ĊĠĠĠ Ġ// TODO Ġsupport Ġmutable Ġcollections ĊĠĠĠ Ġ/* , ĊĠĠĠ Ġval Ġmutable Set : Mutable Set < String > Ġ= Ġmutable Set Of () */ Ċ ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtest : ĠString Ġ= Ġ" should Ġnot Ġbe Ġserialized " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġ! is ĠTest Data ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġif Ġ( set Ġ!= Ġother . set ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( list Ġ!= Ġother . list ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( name Ġ!= Ġother . name ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( date Ġ!= Ġother . date ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( referenced Ġ!= Ġother . referenced ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( map Ġ!= Ġother . map ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( nullable Float Ġ!= Ġother . nullable Float ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( nullable Boolean Ġ!= Ġother . nullable Boolean ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( private Data Ġ!= Ġother . private Data ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġset . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġlist . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġ( name ?. hashCode () Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġ( date ?. hashCode () Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġ( referenced ?. hashCode () Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġmap . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġ( nullable Float ?. hashCode () Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġ( nullable Boolean ?. hashCode () Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġprivate Data . hashCode () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" TestData ( set =$ set , Ġlist =$ list , Ġname =$ name , Ġdate =$ date , Ġreferenced =$ referenced , Ġmap =$ map , Ġnullable Float =$ nullable Float , Ġnullable Boolean =$ nullable Boolean , Ġprivate Data ='$ private Data ')" ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ