package Ġcom . code arms . ma o q iq i . app . statistics Ċ Ċ import Ġcom . code arms . ma o q iq i . app . data . Task Bean Ċ import Ġcom . code arms . ma o q iq i . app . data . source . Tasks DataSource Ċ import Ġcom . code arms . ma o q iq i . app . data . source . Tasks Repository Ċ import Ġcom . code arms . ma o q iq i . app . utils . Message Map Ċ Ċ /** Ċ Ġ* ĠList ens Ġto Ġuser Ġactions Ġfrom Ġthe ĠUI Ġ([ Statistics Fragment ]), Ġretrieves Ġthe Ġdata Ġand Ġupdates Ġthe ĠUI Ġas Ġrequired . Ċ Ġ* ĠAuthor : Ġf eng qi . ma o . m arch @ gmail . com Ċ Ġ* ĠDate : Ġ 2 0 1 9 / 3 / 1 2 Ġ 1 3 : 4 8 Ċ Ġ*/ Ċ class ĠStatistics Presenter Ġinternal Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġtasks Repository : ĠTasks Repository , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġstatistics View : ĠStatistics Contract . View Ċ ) Ġ: ĠStatistics Contract . Presenter Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . statistics View . presenter Ġ= Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstart () Ġ{ ĊĠĠĠĠĠĠĠ Ġload Statistics () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġload Statistics () Ġ{ ĊĠĠĠĠĠĠĠ Ġtasks Repository . load Tasks ( object Ġ: ĠTasks DataSource . Load Tasks CallBack Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tasks Loaded ( task Bean List : ĠList < Task Bean >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠWe Ġcalculate Ġnumber Ġof Ġactive Ġand Ġcompleted Ġtasks ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactive Tasks Ġ= Ġtask Bean List . filter Ġ{ Ġit . isActive Ġ}. size ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcompleted Tasks Ġ= Ġtask Bean List . size Ġ- Ġactive Tasks ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( statistics View . isActive ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatistics View . show Statistics ( active Tasks , Ġcompleted Tasks ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Data Not Available () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( statistics View . isActive ) Ġstatistics View . showMessage ( Message Map . NO _ DATA ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ }