package Ġcom . pokemon . jv . ui . fragments Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . pokemon . jv . R Ċ import Ġcom . pokemon . jv . databinding . Fragment Configuration Binding Ċ import Ġcom . pokemon . jv . internal . d agger . component . D agger Configuration Fragment Component Ċ import Ġcom . pokemon . jv . internal . d agger . component . D agger List Pokemon Fragment Component Ċ import Ġcom . pokemon . jv . ui . activities . Login Activity Ċ import Ġcom . pokemon . jv . ui . base . Base Fragment Ċ import Ġcom . pokemon . jv . ui . presenter . Configuration Presenter Ċ import Ġcom . pokemon . jv . ui . views . Configuration View Ċ import Ġjavax . inject . Inject Ċ Ċ // ĠTODO : ĠRename Ġparameter Ġarguments , Ġchoose Ġnames Ġthat Ġmatch Ċ // Ġthe Ġfragment Ġinitialization Ġparameters , Ġe . g . ĠARG _ ITEM _ NUMBER Ċ private Ġconst Ġval ĠARG _ PARAM 1 Ġ= Ġ" param 1 " Ċ private Ġconst Ġval ĠARG _ PARAM 2 Ġ= Ġ" param 2 " Ċ Ċ /** Ċ Ġ* ĠA Ġsimple Ġ[ Fragment ] Ġsubclass . Ċ Ġ* ĠUse Ġthe Ġ[ Configuration Fragment . newInstance ] Ġfactory Ġmethod Ġto Ċ Ġ* Ġcreate Ġan Ġinstance Ġof Ġthis Ġfragment . Ċ Ġ*/ Ċ class ĠConfiguration Fragment Ġ: ĠBase Fragment (), ĠConfiguration View Ġ{ ĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġpresenter : ĠConfiguration Presenter ĊĠĠĠ Ġlateinit Ġvar Ġbinding : ĠFragment Configuration Binding ĊĊĠĠĠ Ġ// ĠTODO : ĠRename Ġand Ġchange Ġtypes Ġof Ġparameters ĊĠĠĠ Ġprivate Ġvar Ġparam 1 : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġparam 2 : ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbuild Injection () ĊĠĠĠĠĠĠĠ Ġarguments ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparam 1 Ġ= Ġit . getString ( ARG _ PARAM 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparam 2 Ġ= Ġit . getString ( ARG _ PARAM 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġbuild Injection () Ġ{ ĊĠĠĠĠĠĠĠ ĠD agger Configuration Fragment Component . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. application Component ( get Android Application (). getApplication Component ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (). inject ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠInf late Ġthe Ġlayout Ġfor Ġthis Ġfragment ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠFragment Configuration Binding . inflate ( layout Inflater , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġinit UI () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġpresenter . resume () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġpresenter . pause () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠĠĠĠĠ Ġpresenter . destroy () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠUse Ġthis Ġfactory Ġmethod Ġto Ġcreate Ġa Ġnew Ġinstance Ġof ĊĠĠĠĠĠĠĠĠ Ġ* Ġthis Ġfragment Ġusing Ġthe Ġprovided Ġparameters . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparam 1 ĠParameter Ġ 1 . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġparam 2 ĠParameter Ġ 2 . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠA Ġnew Ġinstance Ġof Ġfragment ĠConfiguration Fragment . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ// ĠTODO : ĠRename Ġand Ġchange Ġtypes Ġand Ġnumber Ġof Ġparameters ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( param 1 : ĠString , Ġparam 2 : ĠString ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠConfiguration Fragment (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarguments Ġ= ĠBundle (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput String ( ARG _ PARAM 1 , Ġparam 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput String ( ARG _ PARAM 2 , Ġparam 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġgo Login () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( context (), ĠLogin Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ ACTIVITY _ CLEAR _ TASK ) ĊĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ ACTIVITY _ CLEAR _ TOP ) ĊĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ ACTIVITY _ NEW _ TASK ) ĊĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġactivity ?. finish () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Loading () Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġhide Loading () Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit UI () Ġ{ ĊĠĠĠĠĠĠĠ Ġpresenter . setView ( this ) ĊĠĠĠĠĠĠĠ Ġbinding . btn Logout . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter . logout () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcontext (): ĠContext Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġrequire Context () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow ErrorMessage ( message : ĠString ) Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Error Network Message ( message : ĠString ) Ġ{ ĊĊĠĠĠ Ġ} Ċ }