package Ġcom . github . jay deep w . match filter . view models Ċ Ċ import Ġandroid . app . Application Ċ import Ġcom . github . jay deep w . match filter . models . datasource . repositories . Matches Repository Ċ Ċ class ĠViewModel Factory Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapp : ĠApplication , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrepository : ĠMat ches Repository ): ĠMain ViewModel Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠMain ViewModel :: class . java . get Constructor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApplication :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMat ches Repository :: class . java ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). newInstance ( app , Ġrepository ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠInstanti ation Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException (" Cannot Ġcreate Ġan Ġinstance Ġof Ġclass ", Ġe ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠIllegal AccessException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException (" Cannot Ġcreate Ġan Ġinstance Ġof Ġclass ", Ġe ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊ Ċ }