package Ġme . yk rank . s 1 next . data . api . model Ċ Ċ import Ġcom . fasterxml . jackson . annotation . JsonIgnore Properties Ċ import Ġcom . fasterxml . jackson . annotation . JsonProperty Ċ import Ġcom . google . common . base . Objects Ċ import Ġcom . github . yk rank . android tools . ui . adapter . Stable Id Model Ċ import Ġcom . github . yk rank . android tools . ui . adapter . model . Diff Same Item Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġy k rank Ġon Ġ 2 0 1 7 / 1 / 1 6 . Ċ Ġ*/ Ċ @ JsonIgnore Properties ( ignore Unknown Ġ= Ġtrue ) Ċ class ĠFriend Ġ: ĠDiff Same Item , ĠSt able Id Model Ġ{ ĊĠĠĠ Ġ@ JsonProperty (" uid ") ĊĠĠĠ Ġvar Ġuid : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġ@ JsonProperty (" username ") ĊĠĠĠ Ġvar Ġusername : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġval Ġstable Id : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġuid ?. to Long OrNull () Ġ?: Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġis Same Item ( o : ĠAny ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġo ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( o Ġ! is ĠFriend ) Ġfalse Ġelse ĠObjects . equal ( uid , Ġo . uid ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( java Class Ġ!= Ġother ?. java Class ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġother Ġas ĠFriend ĊĊĠĠĠĠĠĠĠ Ġif Ġ( uid Ġ!= Ġother . uid ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( username Ġ!= Ġother . username ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġuid ?. hashCode () Ġ?: Ġ 0 ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġ( username ?. hashCode () Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ } Ċ