package Ġnet . at til as z abo . redux demo . common . base Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġnet . at til as z abo . redux demo . Redux Demo Application Ċ Ċ abstract Ġclass ĠBase Activity < T ViewModel Ġ: ĠBase ViewModel > Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġ// ĠMembers ĊĊĠĠĠ Ġprotected Ġlateinit Ġvar Ġm ViewModel : ĠT ViewModel ĊĊĠĠĠ Ġ// ĠAppCompatActivity ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġget Layout ResourceId ()?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsetContentView ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġon Initialize () ĊĠĠĠĠĠĠĠ Ġm ViewModel Ġ= ĠonCreate ViewModel (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonCreate (( application Ġas ĠRedux Demo Application ). get Store ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(:: m ViewModel . isInitialized ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm ViewModel . on Destroy () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠPublic ĠApi ĊĊĠĠĠ Ġopen Ġfun Ġon Initialize () Ġ{} ĊĊĠĠĠ Ġabstract Ġfun Ġget Layout ResourceId (): ĠInt ? ĊĊĠĠĠ Ġabstract Ġfun ĠonCreate ViewModel (): ĠT ViewModel Ċ } Ċ