package Ġorg . mj studio . gg ong gang . ui . notification Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . databinding . Binding Adapter Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroidx . recyclerview . widget . RecyclerView . ViewHolder Ċ import Ġorg . mj studio . g free . domain . dto . Not i List Ċ import Ġorg . mj studio . gg ong gang . BR Ċ import Ġorg . mj studio . gg ong gang . databinding . Item Not i Binding Ċ import Ġorg . mj studio . gg ong gang . ui . notification . Not i Adapter . Not i ViewHolder Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util .* Ċ Ċ class ĠNot i Adapter Ġ: ĠRecyclerView . Adapter < Not i ViewHolder >() Ġ{ ĊĊĠĠĠ Ġvar Ġitems Ġ: ĠNot i List Ġ= ĠlistOf () ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠNot i ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĠItem Not i Binding . inflate ( in flater , parent , false ) ĊĊĠĠĠĠĠĠĠ Ġreturn ĠNot i ViewHolder ( binding ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġitems . size ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠNot i ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . bind ( items [ position ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠNot i ViewHolder ( private Ġval Ġbinding : ĠItem Not i Binding ) Ġ: ĠViewHolder ( binding . root ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind ( item Ġ: ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . set Variable ( BR . item , item ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . execute Pending Bindings () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ } Ċ @ Binding Adapter (" app : not i Items ") Ċ fun ĠRecyclerView . set Not i Items ( items Ġ: ĠNot i List ) Ġ{ ĊĠĠĠ Ġ( this . adapter Ġas ? ĠNot i Adapter )?. items Ġ= Ġitems ĊĠĠĠ Ġthis . adapter ?. notify DataSet Changed () Ċ } Ċ Ċ @ Suppress Lint (" SimpleDateFormat ") Ċ @ Binding Adapter (" app : not i DateTime ") Ċ fun ĠTextView . set Not i DateTime ( time Ġ: ĠLong ) Ġ{ ĊĠĠĠ Ġval Ġcalendar Ġ= ĠCalendar . getInstance () ĊĠĠĠ Ġcalendar . time Ġ= ĠDate ( time ) ĊĊĠĠĠ Ġval Ġformat Ġ= ĠSimpleDateFormat (" yyyy / MM / dd ĠHH : mm : ss ") ĊĠĠĠ Ġthis . text Ġ= Ġformat . format ( calendar . time ) Ċ }