package Ġuc i . f ia i . mini ak d . tasks Ċ Ċ import Ġandroid . os . AsyncTask Ċ import Ġuc i . f ia i . mini ak d . database . Main Database Ċ import Ġuc i . f ia i . mini ak d . database . entities . Student Ċ Ċ class ĠLoad Student sBy B rig ade AsyncTask ( private Ġval Ġlistener : ĠViewModel Listener ) Ġ: ĠAsync Task < Int , ĠVoid , ĠArrayList < Student >>() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġdo In Background ( var arg Ġparams : ĠInt ?): ĠArrayList < Student >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparams . isEmpty () Ġ-> ĠMain Database . instance ( listener . context ). students . getAll () Ġas ĠArrayList ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparams . size Ġ== Ġ 1 Ġ-> ĠMain Database . instance ( listener . context ). students . getAll By B rig ade ( params [ 0 ] !! ) Ġas ĠArrayList ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠArrayList ( 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Post Execute ( result : ĠArrayList < Student > ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Post Execute ( result ) ĊĊĠĠĠĠĠĠĠ Ġlistener . on Task Finished ( result !! , Ġthis . java Class . name ) ĊĠĠĠ Ġ} Ċ }