package Ġcom . pitch black . t ivi plus . ui . commons Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġandroidx . recyclerview . widget . ListAdapter Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . pitch black . t ivi plus . R Ċ import Ġcom . pitch black . t ivi plus . data . model . Review Ċ import Ġcom . pitch black . t ivi plus . databinding . Item Detail Review Binding Ċ Ċ class ĠReview ListAdapter : ĠList Adapter < Review , ĠReview ListAdapter . ViewHolder >( Review Entity Diff Callback ()) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder . from ( parent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= ĠgetItem ( position ) ĊĠĠĠĠĠĠĠ Ġholder . bind ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠViewHolder Ġprivate Ġconstructor ( val Ġbinding : ĠItem Detail Review Binding ): ĠRecyclerView . ViewHolder ( binding . root ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġfrom ( parent : ĠViewGroup ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĠItem Detail Review Binding . inflate ( in flater , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( binding ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind ( item : ĠReview ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . txt People Name . text Ġ= Ġitem . author ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . txt Rating . text Ġ= Ġbinding . root . context . getString ( R . string . rating _ star , Ġitem . rating ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . txt CreatedAt . text Ġ= Ġitem . createdAt ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . txt People Content . text Ġ= Ġitem . content ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠReview Entity Diff Callback : ĠDiff Util . Item Callback < Review >() Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠReview , Ġnew Item : ĠReview ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġold Item . id Ġ== Ġnew Item . id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠReview , Ġnew Item : ĠReview ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġold Item Ġ== Ġnew Item ĊĠĠĠ Ġ} Ċ }