package Ġcom . example . sv book market . activities . view model Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġcom . example . sv book market . activities . model . Book Ċ Ċ // class ĠItem Detail ViewModel Factory ( private Ġval Ġbook : ĠBook ?): ViewModel Provider . Factory { Ċ // ĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠViewModel ?> Ġcreate ( model Class : ĠClass < T >): ĠT Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġif Ġ( model Class . isAssignableFrom ( Item Detail ViewModel :: class . java )) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠItem Detail ViewModel ( book ) Ġas ĠT Ċ // ĠĠĠĠĠĠĠ Ġthrow ĠIllegalArgumentException (" Wrong Ġview Ġmodel Ġclass ") Ċ // ĠĠĠ Ġ} Ċ //} Ċ