package Ġcom . c jf . controller Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroidx . lifecycle . Android ViewModel Ċ import Ġcom . c jf . pre . core . Pre Task Impl Ċ import Ġcom . c jf . pre . core . Pre Task Loader Ċ Ċ /** Ċ Ġ* Ġ< p > Title : ĠBase ViewModel Ġ</ p > Ċ Ġ* Ġ< p > Description : Ġ Ġ</ p > Ċ Ġ* Ġ< p > Company : Ġwww . map uni . com Ġ</ p > Ċ Ġ* Ċ Ġ* Ġ@ author Ġ: Ġ èĶ ¡ ä¿ Ĭ å³ ° Ċ Ġ* Ġ@ date Ġ: Ġ 2 0 2 0 / 8 / 8 Ġ 2 2 : 1 5 Ċ Ġ* Ġ@ version Ġ: Ġ 1 . 0 Ċ Ġ*/ Ċ open Ġclass ĠBase ViewModel ( application : ĠApplication ) Ġ: ĠAndroid ViewModel ( application ) Ġ{ ĊĠĠĠ Ġprotected Ġopen Ġval Ġloader Ġby Ġlazy Ġ{ ĠLoad Controller () Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġclass ĠLoad Controller Ġ: ĠBase Pre Controller () Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Cle ared () Ġ{ ĊĠĠĠĠĠĠĠ Ġloader . clear () ĊĠĠĠĠĠĠĠ Ġsuper . on Cle ared () ĊĠĠĠ Ġ} ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ æķ°æį® ĊĠĠĠĠ Ġ* Ġ@ param Ġtag ĠAny Ġ æłĩè¯Ĩ ĊĠĠĠĠ Ġ* Ġ@ param Ġpre Task Impl Ġ[@ kotlin . Extension FunctionType ] ĠFunction 2 < Pre Task Impl < Any >, Ġ[@ kotlin . ParameterName ] ĠString ?, ĠAny > ĊĠĠĠĠ Ġ* Ġ@ return ĠPre Task Loader < Any > ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġget Any ( ĊĠĠĠĠĠĠĠ Ġtag : ĠAny , ĊĠĠĠĠĠĠĠ Ġpre Task Impl : Ġ( Pre Task Impl < Any >. ( userId : ĠString ?) Ġ-> ĠAny ) ĊĠĠĠ Ġ): ĠPre Task Loader < Any > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġloader . get Any ( tag , Ġpre Task Impl ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ åĬłè½½ æķ°æį® ĊĠĠĠĠ Ġ* Ġ@ param Ġtag ĠAny Ġ æłĩè¯Ĩ ĊĠĠĠĠ Ġ* Ġ@ param Ġpre Task Impl Ġ[@ kotlin . Extension FunctionType ] ĠFunction 2 < Pre Task Impl < Any >, Ġ[@ kotlin . ParameterName ] ĠString ?, ĠUnit > ĊĠĠĠĠ Ġ* Ġ@ return ĠPre Task Loader < Any > ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġload Any ( ĊĠĠĠĠĠĠĠ Ġtag : ĠAny , ĊĠĠĠĠĠĠĠ Ġpre Task Impl : Ġ( Pre Task Impl < Any >. ( userId : ĠString ?) Ġ-> ĠUnit ) ĊĠĠĠ Ġ): ĠPre Task Loader < Any > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġloader . load Any ( tag , Ġpre Task Impl ) ĊĠĠĠ Ġ} Ċ Ċ }