package Ġcom . j ames j mt aylor . we g 2 0 1 5 . models . entities Ċ Ċ import Ġandroid . os . Parcel Ċ import Ġandroid . os . Parcelable Ċ import Ġandroidx . room . Embedded Ċ import Ġandroidx . room . Entity Ċ import Ġandroidx . room . Ignore Ċ import Ġandroidx . room . PrimaryKey Ċ import Ġcom . google . gson . Gson Builder Ċ import Ġcom . j ames j mt aylor . we g 2 0 1 5 . models . Equipment Ċ import Ġcom . j ames j mt aylor . we g 2 0 1 5 . models . Equipment Type Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġj t aylor Ġon Ġ 2 / 2 6 / 1 8 . Ċ Ġ*/ Ċ @ Entity ( tableName Ġ= Ġ" land ") Ċ data Ġclass ĠLand ( override Ġ@ PrimaryKey Ġval Ġid : ĠLong Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġval Ġname : ĠString , Ġval Ġdescription : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgroup Icon Url : ĠString ? Ġ= Ġnull , Ġval Ġindividual Icon Url : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġval Ġphoto Url : ĠString ? Ġ= Ġnull , ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Embedded ( prefix Ġ= Ġ" primary ") Ġval Ġprimary Weapon : ĠG un ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Embedded ( prefix Ġ= Ġ" secondary ") Ġval Ġsecondary Weapon : ĠG un ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Embedded ( prefix Ġ= Ġ" at gm ") Ġval Ġat gm : ĠG un ? Ġ= Ġnull , ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġarm or : ĠInt ? Ġ= Ġnull , Ġval Ġspeed : ĠInt ? Ġ= Ġnull , Ġval Ġauto : ĠInt ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġweight : ĠInt ? Ġ= Ġnull ) Ġ: ĠE quipment , ĠParcel able Ġ{ ĊĠĠĠ Ġ@ Ignore ĊĠĠĠ Ġoverride Ġvar Ġtype Ġ= ĠE quipment Type . LAND ĊĊĠĠĠ Ġconstructor ( parcel : ĠParcel ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . read Long (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readString () Ġ?: Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . read Parcelable ( Gun :: class . java . class Loader ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . read Parcelable ( Gun :: class . java . class Loader ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . read Parcelable ( Gun :: class . java . class Loader ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readValue ( Int :: class . java . class Loader ) Ġas ? ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readValue ( Int :: class . java . class Loader ) Ġas ? ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readValue ( Int :: class . java . class Loader ) Ġas ? ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . readValue ( Int :: class . java . class Loader ) Ġas ? ĠInt ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ Ġ// needed Ġfor ĠDiff Util ĊĠĠĠĠĠĠĠ Ġval Ġe Ġ= Ġother Ġas ? ĠE quipment ĊĠĠĠĠĠĠĠ Ġreturn Ġid Ġ== Ġe ?. id Ġ&& Ġe . type Ġ== ĠE quipment Type . LAND ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠLand List Ġ: ĠArrayList < Land >() // Used Ġfor ĠG SON Ġde serialization ĊĊĠĠĠ Ġoverride Ġfun ĠwriteTo Parcel ( parcel : ĠParcel , Ġflags : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġparcel . write Long ( id ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( name ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( description ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( group Icon Url ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( individual Icon Url ) ĊĠĠĠĠĠĠĠ Ġparcel . writeString ( photoUrl ) ĊĠĠĠĠĠĠĠ Ġparcel . write Parcelable ( primary Weapon , Ġflags ) ĊĠĠĠĠĠĠĠ Ġparcel . write Parcelable ( secondary Weapon , Ġflags ) ĊĠĠĠĠĠĠĠ Ġparcel . write Parcelable ( at gm , Ġflags ) ĊĠĠĠĠĠĠĠ Ġparcel . writeValue ( armor ) ĊĠĠĠĠĠĠĠ Ġparcel . writeValue ( speed ) ĊĠĠĠĠĠĠĠ Ġparcel . writeValue ( auto ) ĊĠĠĠĠĠĠĠ Ġparcel . writeValue ( weight ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdescribe Contents (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject ĠCRE ATOR Ġ: ĠParcel able . Creator < Land > Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate From Parcel ( parcel : ĠParcel ): ĠLand Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠLand ( parcel ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnew Array ( size : ĠInt ): ĠArray < Land ?> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠarrayOf Null s ( size ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġparse Land Response String ( response : ĠString ): ĠList < Land > Ġ{ ĊĠĠĠ Ġval Ġgson Ġ= ĠGson Builder (). create () ĊĠĠĠ Ġval Ġland Ġ= Ġgson . fromJson < List < Land >>( response , ĠLand . Land List :: class . java ) ĊĠĠĠ Ġreturn Ġland Ċ }