package Ġcom . d ide mer en . co ffe esh op ret rofit rx . ui . shop Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . databinding . Data Binding Util Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . d ide mer en . co ffe esh op ret rofit rx . R Ċ import Ġcom . d ide mer en . co ffe esh op ret rofit rx . databinding . ListItem Shop Binding Ċ import Ġcom . d ide mer en . co ffe esh op ret rofit rx . model . Order Ċ import Ġcom . d ide mer en . co ffe esh op ret rofit rx . model . Orders Response Ċ Ċ class ĠShop Order Adapter Ġinternal Ġconstructor ( private Ġval Ġm Listener : ĠRecyclerView ClickListener ): ĠRecyclerView . Adapter < Shop Order Adapter . ViewHolder > (){ ĊĊĠĠĠ Ġprivate Ġvar Ġitems : ĠMutable List < Order > ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= ĠgetItem ( position ) ĊĠĠĠĠĠĠĠ Ġholder . bind ( item , Ġm Listener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder . from ( parent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠViewHolder Ġprivate Ġconstructor ( private Ġval Ġbinding : ĠListItem Shop Binding ) Ġ: ĠRecyclerView . ViewHolder ( binding . root ){ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġlateinit Ġvar Ġm Listener : ĠRecyclerView ClickListener ĊĠĠĠĠĠĠĠ Ġfun Ġbind ( item : ĠOrder , Ġm Listener : ĠRecyclerView ClickListener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . m Listener Ġ= Ġm Listener ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . status Text . setOnClickListener { m Listener . onClick ( adapter Position )} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . order Ġ= Ġitem ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . execute Pending Bindings () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġfrom ( parent : ĠViewGroup ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlayout Inflater Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbinding : ĠListItem Shop Binding Ġ= ĠData Binding Util . inflate ( layout Inflater , ĠR . layout . list _ item _ shop , Ġparent , false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( binding ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġitems . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠgetItem ( position : ĠInt Ġ): ĠOrder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġitems [ position ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsubmit List ( items : ĠMutable List < Order >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . items Ġ= Ġitems ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġitems Ġ= ĠArrayList () ĊĠĠĠ Ġ} Ċ Ċ }