package Ġnet . my env . my energy . ui . history Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . navigation . Navigation Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . google . android . material . tabs . Tab Layout Ċ import Ġcom . google . android . material . tabs . Tab Layout . On Tab Selected Listener Ċ import Ġnet . my env . my energy . Main ViewModel Ċ import Ġnet . my env . my energy . R Ċ import Ġnet . my env . my energy . model . Energy Ċ import Ġnet . my env . my energy . model . Result Ċ import Ġnet . my env . my energy . ui . history . Dialog Select Dates . Companion . SHOW _ DAY _ P ICK ER Ċ import Ġnet . my env . my energy . ui . history . Dialog Select Dates . Companion . SHOW _ MONTH _ P ICK ER Ċ import Ġnet . my env . my energy . ui . history . Dialog Select Dates . Companion . SHOW _ YEAR _ P ICK ER Ċ import Ġnet . my env . my energy . utils . extension .* Ċ import Ġorg . k oin . android x . view model . ext . android . shared ViewModel Ċ import Ġjava . util .* ĊĊ Ċ class ĠHistory Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġmain ViewModel Ġby Ġshared ViewModel < Main ViewModel >() ĊĊĠĠĠ Ġprivate Ġvar Ġselected _ tab Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġvar Ġdaily StartDate Ġ= Ġ ĠDate (). minus Days ( 1 4 ) ĊĠĠĠ Ġprivate Ġvar Ġdaily EndDate Ġ= ĠDate (). start Day () ĊĠĠĠ Ġprivate Ġvar Ġmonthly StartDate Ġ= Ġ ĠDate (). minus Month ( 1 2 ) ĊĠĠĠ Ġprivate Ġvar Ġmonthly EndDate Ġ= ĠDate (). start Day () ĊĠĠĠ Ġprivate Ġvar Ġann ually StartDate Ġ= Ġ ĠDate (). minus Year ( 6 ) ĊĠĠĠ Ġprivate Ġvar Ġann ually EndDate Ġ= Ġ ĠDate (). start Day () ĊĊĠĠĠ Ġprivate Ġvar Ġfirst Daily Load Ġ= Ġtrue ĊĠĠĠ Ġprivate Ġvar Ġfirst Monthly Load Ġ= Ġtrue ĊĠĠĠ Ġprivate Ġvar Ġfirst Annual y Load Ġ= Ġtrue ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġhistory Energy List Ġ: ĠRecyclerView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtabs Ġ: Tab Layout ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġhistory Dates Ġ: Button ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġnot Found Data Ġ: TextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġprogress Ġ: View ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġroot Ġ= Ġinflater . inflate ( R . layout . fragment _ history , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġhistory Energy List Ġ= Ġroot . findViewById ( R . id . history _ energy _ list ) ĊĠĠĠĠĠĠĠ Ġtabs Ġ= Ġroot . findViewById ( R . id . history _ tab _ layout ) ĊĠĠĠĠĠĠĠ Ġhistory Dates Ġ= Ġroot . findViewById ( R . id . history Dates ) ĊĠĠĠĠĠĠĠ Ġnot Found Data Ġ= Ġroot . findViewById ( R . id . not _ found _ data ) ĊĠĠĠĠĠĠĠ Ġprogress Ġ= Ġroot . findViewById ( R . id . progress ) ĊĠĠĠĠĠĠĠ Ġreturn Ġroot ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View () ĊĠĠĠĠĠĠĠ Ġfirst Daily Load Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġfirst Monthly Load Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġfirst Annual y Load Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġinit Tabs () ĊĠĠĠĠĠĠĠ Ġinit Listener () ĊĠĠĠĠĠĠĠ Ġshow Daily Energy ( true ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġinit Tabs () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday ily Ġ= Ġtabs . new Tab (). apply Ġ{ Ġtext Ġ= ĠgetString ( R . string . day ily ) Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmonthly Ġ= Ġtabs . new Tab (). apply Ġ{ Ġtext Ġ= ĠgetString ( R . string . monthly ) Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġann ually Ġ= Ġtabs . new Tab (). apply Ġ{ Ġtext Ġ= ĠgetString ( R . string . ann ually ) Ġ} ĊĠĠĠĠĠĠĠ Ġtabs . add Tab ( day ily ) ĊĠĠĠĠĠĠĠ Ġtabs . add Tab ( monthly ) ĊĠĠĠĠĠĠĠ Ġtabs . add Tab ( ann ually ) ĊĠĠĠĠĠĠĠ Ġtabs . add On Tab Selected Listener ( object Ġ: ĠOn Tab Selected Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Selected ( tab : ĠTab Layout . Tab ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected _ tab Ġ= Ġtab . position ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( selected _ tab ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġ{ Ġshow Daily Energy ( false ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġ{ Ġshow Monthly Energy ( false ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> Ġ{ Ġshow Ann ually Energy ( false ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Un selected ( tab : ĠTab Layout . Tab ) Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Re selected ( tab : ĠTab Layout . Tab ) Ġ{} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġinit Listener () Ġ{ ĊĠĠĠĠĠĠĠ Ġhistory Dates . setOnClickListener Ġ{ Ġshow Dialog () Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġdaily Listener Ġ= Ġobject Ġ: ĠHistory Energy View Adapter . History Energy Adapter Listener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( date : ĠLong ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . put Long (" date ", Ġdate ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNavigation . find Nav Controller ( view !! ). navigate ( R . id . day _ Fragment , Ġargs ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġmonthly Listener Ġ= Ġobject Ġ: ĠHistory Energy View Adapter . History Energy Adapter Listener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( date : ĠLong ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtabs . get Tab At ( 0 )?. select () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdaily StartDate Ġ= ĠDate ( date ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdaily EndDate Ġ= Ġdaily StartDate . end Month () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Daily Energy ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġann ually Listener Ġ= Ġobject Ġ: ĠHistory Energy View Adapter . History Energy Adapter Listener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonClick ( date : ĠLong ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtabs . get Tab At ( 1 )?. select () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmonthly StartDate Ġ= ĠDate ( date ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmonthly EndDate Ġ= Ġ Ġmonthly StartDate . end Year () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Monthly Energy ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġmain ViewModel . daily Energy . observe ( view Lifecycle Owner , Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selected _ tab Ġ== Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow List ( it , Ġtrue , Ġdaily Listener ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġmain ViewModel . monthly Energy . observe ( view Lifecycle Owner , Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selected _ tab Ġ== Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow List ( it , Ġfalse , Ġmonthly Listener ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġmain ViewModel . ann ually Energy . observe ( view Lifecycle Owner , Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selected _ tab Ġ== Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow List ( it , Ġfalse , Ġann ually Listener ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Dialog () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlistener Ġ= Ġobject Ġ: ĠDialog Select Dates . Dialog Select Dates Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Dates Set ( startDate : ĠDate , ĠendDate : ĠDate ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen ( selected _ tab ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( daily StartDate Ġ!= ĠstartDate Ġ|| Ġdaily EndDate Ġ!= ĠendDate ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdaily StartDate Ġ= ĠstartDate ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdaily EndDate Ġ= ĠendDate ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Daily Energy ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( monthly StartDate Ġ!= ĠstartDate Ġ|| Ġmonthly EndDate Ġ!= ĠendDate ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmonthly StartDate Ġ= ĠstartDate ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmonthly EndDate Ġ= ĠendDate ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Monthly Energy ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( ann ually StartDate Ġ!= ĠstartDate Ġ|| Ġann ually EndDate Ġ!= ĠendDate ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġann ually StartDate Ġ= ĠstartDate ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġann ually EndDate Ġ= ĠendDate ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Ann ually Energy ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġpicker Dialog Ġ= Ġwhen ( selected _ tab ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġ{ ĠDialog Select Dates ( SHOW _ DAY _ P ICK ER , Ġdaily StartDate , Ġdaily EndDate , Ġlistener ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġ{ ĠDialog Select Dates ( SHOW _ MONTH _ P ICK ER , Ġmonthly StartDate , Ġmonthly EndDate , Ġlistener ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> Ġ{ ĠDialog Select Dates ( SHOW _ YEAR _ P ICK ER , Ġann ually StartDate , Ġann ually EndDate , Ġlistener ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĠDialog Select Dates ( selected _ tab , Ġdaily StartDate , Ġdaily EndDate , Ġlistener ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġpicker Dialog . show ( require Activity (). support FragmentManager , Ġ" DAT ES _ P ICK ER ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Daily Energy ( reload : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsd Ġ= Ġget Date AsString ( daily StartDate , Ġ" dd - MM - yyyy ") ĊĠĠĠĠĠĠĠ Ġval Ġed Ġ= Ġget Date AsString ( daily EndDate , Ġ" dd - MM - yyyy ") ĊĠĠĠĠĠĠĠ Ġhistory Dates . text Ġ= ĠString . format ("% s Ġ- Ġ% s ", Ġsd , Ġed ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( reload Ġ|| Ġfirst Daily Load ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmain ViewModel . get Energy Daily ( daily StartDate . time , Ġdaily EndDate . time , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfirst Daily Load Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmain ViewModel . get Energy Daily ( daily StartDate . time , Ġdaily EndDate . time , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Monthly Energy ( reload : ĠBoolean ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġsd Ġ= Ġget Date AsString ( monthly StartDate , Ġ" MM - yyyy ") ĊĠĠĠĠĠĠĠ Ġval Ġed Ġ= Ġget Date AsString ( monthly EndDate , Ġ" MM - yyyy ") ĊĠĠĠĠĠĠĠ Ġhistory Dates . text Ġ= ĠString . format ("% s Ġ- Ġ% s ", Ġsd , Ġed ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( reload Ġ|| Ġfirst Monthly Load ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmain ViewModel . get Energy Monthly ( monthly StartDate . time , Ġmonthly EndDate . time , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfirst Monthly Load Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmain ViewModel . get Energy Monthly ( monthly StartDate . time , Ġmonthly StartDate . time , Ġfalse ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Ann ually Energy ( reload : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsd Ġ= Ġget Date AsString ( ann ually StartDate , Ġ" yyyy ") ĊĠĠĠĠĠĠĠ Ġval Ġed Ġ= Ġget Date AsString ( ann ually EndDate , Ġ" yyyy ") ĊĠĠĠĠĠĠĠ Ġhistory Dates . text Ġ= ĠString . format ("% s Ġ- Ġ% s ", Ġsd , Ġed ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( reload Ġ|| Ġfirst Annual y Load ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmain ViewModel . get Energy Ann ually ( ann ually StartDate . time , Ġann ually EndDate . time , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfirst Annual y Load Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmain ViewModel . get Energy Ann ually ( ann ually StartDate . time , Ġann ually EndDate . time , Ġfalse ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow List ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult : ĠResult , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Weather : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist Listener : ĠHistory Energy View Adapter . History Energy Adapter Listener ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠResult . Loading Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress . show ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhistory Energy List . show ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot Found Data . show ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠResult . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress . show ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhistory Energy List . show ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot Found Data . show ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġitem Ġ= Ġresult . data Ġas ĠList < Energy > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhistory Energy List . adapter Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhistory Energy List . adapter Ġ= ĠHistory Energy View Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Weather , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlist Listener ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠResult . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress . show ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhistory Energy List . show ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot Found Data . show ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊ Ċ } ĊĊ