package Ġuk . co . sentinel web . bit watcher . activity . main . pages . transactions . list Ċ Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġuk . co . sentinel web . bit watcher . activity . main . pages . transactions . list . row . Trade Row View Ċ import Ġuk . co . sentinel web . bit watcher . activity . main . pages . transactions . list . row . Transaction Row Contract Ċ import Ġuk . co . sentinel web . bit watcher . activity . main . pages . transactions . list . row . Transaction Row Presenter Ċ import Ġuk . co . sentinel web . bit watcher . activity . main . pages . transactions . list . row . Transaction Row View Ċ import Ġuk . co . sentinel web . domain . Transaction Item Domain . Trade Domain Ċ import Ġuk . co . sentinel web . domain . Transaction Item Domain . Transaction Domain Ċ Ċ class ĠTransaction ListAdapter Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġvar Ġlist : ĠList < Transaction Item Model > Ċ ) Ġ: ĠRecyclerView . Adapter < Transaction ListAdapter . Transaction Item ViewHolder >() Ġ{ ĊĊĠĠĠ Ġinner Ġclass ĠTransaction Item ViewHolder ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView : ĠView , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpresenter : Transaction Row Contract . Presenter Ġ= ĠTransaction Row Presenter ( item View Ġas ĠTransaction Row Contract . View ) ĊĠĠĠ Ġ) Ġ: ĠRecyclerView . ViewHolder ( item View ) ĊĊĠĠĠ Ġfun Ġset Items ( list : ĠList < Transaction Item Model >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . list Ġ= Ġlist ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠTransaction Item ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġwhen Ġ( view Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> ĠTransaction Row View ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> ĠTrade Row View ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠView ( parent . context ) Ġ// Ġshould Ġnever Ġhappen ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġview . layout Params Ġ= ĠRecyclerView . LayoutParams ( RecyclerView . LayoutParams . MATCH _ PARENT , ĠRecyclerView . LayoutParams . WRAP _ CONTENT ) ĊĠĠĠĠĠĠĠ Ġreturn ĠTransaction Item ViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlist . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠTransaction Item ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . presenter . bind Data ( list . get ( position )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ViewType ( position : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( list . get ( position ). domain ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠTransaction Domain Ġ-> Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠTrade Domain Ġ-> Ġ 1 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }