package Ġcom . am ity . sample . as cs dk . post Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . am ity . sample . as cs dk . R Ċ import Ġcom . am ity . social cloud . sdk . social . feed . Am ity Post Ċ import Ġorg . joda . time . format . DateTime Formatter Ċ import Ġorg . joda . time . format . ISO DateTime Format Ċ Ċ class ĠPost ViewHolder ( in flater : ĠLayoutInflater , Ġparent : ĠViewGroup ) Ġ: ĊĠĠĠ ĠRecyclerView . ViewHolder ( in flater . inflate ( R . layout . item _ post , Ġparent , Ġfalse )) Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġpost TextView : ĠTextView ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġpost TextView Ġ= ĠitemView . findViewById ( R . id . post _ text view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbind ( post : ĠAm ity Post ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġroot Post Ġ= Ġ" post Id : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" feed Type : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" dataType : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" data : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" my Re actions : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" reaction Count : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" comment Count : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" children Count : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" deleted : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" updatedAt : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" createdAt : Ġ% s " ĊĊĠĠĠĠĠĠĠ Ġval Ġchild Post Ġ= Ġ"\ n - Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- Ġ- \ n \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġpost Id : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ ĠparentId : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġfeed Type : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ ĠdataType : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġdata : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġmy Re actions : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġreaction Count : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġcomment Count : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ Ġdeleted : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ ĠupdatedAt : Ġ% s \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ĠĠĠĠĠĠ ĠcreatedAt : Ġ% s \ n " ĊĊĠĠĠĠĠĠĠ Ġvar Ġdisplay Post Ġ= ĠString . format ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġroot Post , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . getPost Id (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . get Feed Type (). apiKey , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . getType (). get ApiKey (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( post . getData () Ġas ? ĠAm ity Post . Data . TEXT )?. getText () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġ( post . getData () Ġas ? ĠAm ity Post . Data . IMAGE )?. getImage ()?. getUrl () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġ( post . getData () Ġas ? ĠAm ity Post . Data . FILE )?. getFile ()?. getUrl () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġ( post . getData () Ġas ? ĠAm ity Post . Data . CUSTOM )?. get RawData ()?. toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġ( post . getData () Ġas ? ĠAm ity Post . Data . VIDEO )?. get Thumbnail Image ()?. getUrl () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġ" unknown ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . get My Re actions (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . get Reaction Count (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . get Comment Count (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . getChildren (). size , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . is Deleted (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . get UpdatedAt ()?. toString ( ISO DateTime Format . date Hour Minute Second ()), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost . get CreatedAt ()?. toString ( ISO DateTime Format . date Hour Minute Second ()) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġpost . getChildren (). forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisplay Post Ġ+= ĠString . format ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchild Post , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . getPost Id (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . getParent Post Id (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . get Feed Type (). apiKey , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . getType (). get ApiKey (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . getData () Ġas ? ĠAm ity Post . Data . TEXT )?. getText (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . get My Re actions (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . get Reaction Count (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . get Comment Count (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . is Deleted (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . get UpdatedAt ()?. toString ( ISO DateTime Format . date Hour Minute Second ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . get CreatedAt ()?. toString ( ISO DateTime Format . date Hour Minute Second ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġpost TextView ?. text Ġ= Ġdisplay Post ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠPost Diff Util Ġ: ĠDiff Util . Item Callback < Am ity Post >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠAm ity Post , Ġnew Item : ĠAm ity Post ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item . getPost Id () Ġ== Ġnew Item . getPost Id () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠAm ity Post , Ġnew Item : ĠAm ity Post ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item . getPost Id () Ġ== Ġnew Item . getPost Id () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġold Item . get UpdatedAt () Ġ== Ġnew Item . get UpdatedAt () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }