package Ġ` in `. bit ots av . feed . data Ċ Ċ import Ġ` in `. bit ots av . shared . ui . Simple RecyclerView Adapter Ċ import Ġandroid . text . format . DateFormat Ċ import Ġandroidx . annotation . Keep Ċ import Ġandroidx . room . Entity Ċ import Ġandroidx . room . PrimaryKey Ċ import Ġcom . google . gson . annotations . Expose Ċ import Ġcom . google . gson . annotations . SerializedName Ċ import Ġjava . util .* Ċ Ċ enum Ġclass ĠFeed Type Ġ{ ĊĠĠĠ ĠEVENT , ĊĠĠĠ ĠRESULT , ĊĠĠĠ ĠAN NOUN CE MENT , ĊĠĠĠ ĠPM Ċ } Ċ Ċ // Exclude ĠMember Ġfrom Ġpro guard Ġto Ġallow Ġgson Ġserialization Ċ @ Keep Ċ @ Entity Ċ data Ġclass ĠFeed ( ĊĠĠĠ Ġ@ PrimaryKey Ġ@ SerializedName (" feed Id ") Ġval Ġid : ĠLong , ĊĠĠĠ Ġ@ SerializedName (" title ") Ġval Ġtitle : ĠString , ĊĠĠĠ Ġ@ SerializedName (" content ") Ġval Ġcontent : ĠString , ĊĠĠĠ Ġ@ SerializedName (" type ") Ġval Ġtype : ĠString , Ġ// ĠFeed Type ĊĠĠĠ Ġ@ SerializedName (" timestamp ") Ġval Ġtimestamp : ĠLong , Ġ// ĠM illiseconds ĊĠĠĠ Ġ@ Expose ( serialize Ġ= Ġfalse , Ġdeserialize Ġ= Ġfalse ) Ġvar Ġis Star red : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġval Ġevent Id : ĠInt ? Ġ= Ġnull , ĊĠĠĠ Ġ@ Expose ( serialize Ġ= Ġfalse , Ġdeserialize Ġ= Ġfalse ) Ġvar ĠeventName : ĠString ? Ġ= Ġnull Ċ ) Ġ: ĠSimple RecyclerView Adapter . Simple Item () Ġ{ ĊĊĠĠĠ Ġ// Ġ* Note : ĠMust Ġbe Ġcalled Ġwhen Ġcreating Ġan Ġinstance Ġusing ĠGson Ġto Ġinitialise Ġthese Ġparams . ĊĠĠĠ Ġfun Ġset Properties ( is Star red : ĠBoolean , ĠeventName : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . is Star red Ġ= Ġis Star red ĊĠĠĠĠĠĠĠ Ġthis . eventName Ġ= ĠeventName ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetType Label () Ġ= ĊĠĠĠĠĠĠĠ Ġwhen Ġ( type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFeed Type . EVENT . name Ġ-> ĠeventName Ġ?: Ġ" Event ĠUpdate " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFeed Type . RESULT . name Ġ-> ĠeventName ?. let Ġ{ Ġ"$ eventName ĠResult " Ġ} Ġ?: Ġ" Event ĠResult " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFeed Type . AN NOUN CE MENT . name Ġ-> Ġ" Anno uncement " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFeed Type . PM . name Ġ-> Ġ" Private ĠMessage " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ" Update " ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetTime String () Ġ= ĠDate Format . format ( ĊĠĠĠĠĠĠĠ Ġ" MMM Ġd , Ġhh : mm Ġa aa ", ĊĠĠĠĠĠĠĠ ĠG regorian Calendar . getInstance ( TimeZone . getDefault (), ĠLocale . getDefault ()). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtime In Millis Ġ= Ġtimestamp ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ). toString () ĊĊĠĠĠ Ġoverride Ġfun Ġget Unique Identifier (): ĠString Ġ= Ġid . toString () Ċ Ċ }