private val executorService: ExecutorService): ViewModelProvider.Factory {
// Override the create function in order to add the provided arguments.
override fun <T: ViewModel?> create(modelClass: Class<T>): T {
// Return a new instance of the model class with the provided arguments.
return modelClass.getConstructor(String::class.java, String::class.java, Boolean::class.java, String::class.java, Proxy::class.java, ExecutorService::class.java)
private val executorService: ExecutorService): ViewModelProvider.Factory {
// Override the create function in order to add the provided arguments.
override fun <T: ViewModel?> create(modelClass: Class<T>): T {
// Return a new instance of the model class with the provided arguments.
return modelClass.getConstructor(String::class.java, String::class.java, Boolean::class.java, String::class.java, Proxy::class.java, ExecutorService::class.java)