frellan
05/12/2018, 1:45 PMfun findAll(modelClass: KClass<out BaseModel>): List<modelClass> {
return Ebean.find(modelClass::class.java).findList()
}
But that obviously is not the right syntaxfrellan
05/12/2018, 1:54 PMfun <T : BaseModel> findAll(modelClass: KClass<T>): List<T> {
return Ebean.find(modelClass::class.java).findList() as List<T>
}
Seems to work, but it is an unchecked cast, guess Im fine with thatAndreas Sinz
05/12/2018, 2:19 PMfrellan
05/12/2018, 2:20 PMfrellan
05/12/2018, 2:20 PMAndreas Sinz
05/12/2018, 2:21 PMKClass<T>
? or would be fun <T : BaseModel> findAll(): List<T>
be good enough?frellan
05/12/2018, 2:23 PMfrellan
05/12/2018, 2:23 PMAndreas Sinz
05/12/2018, 2:23 PMval modelClasses = findAll<ModelClass>()
?frellan
05/12/2018, 2:24 PMAndreas Sinz
05/12/2018, 2:24 PMinline fun <reified T: BaseModel> findAll() : List<T> { .. }
Andreas Sinz
05/12/2018, 2:24 PMAndreas Sinz
05/12/2018, 2:25 PMT::class.java
inside the body instead of modelClass::class.java
frellan
05/12/2018, 2:25 PMfrellan
05/12/2018, 2:26 PMDB.findAll(Class::class)
right nowfrellan
05/12/2018, 2:27 PMDB.findAll<Class>
frellan
05/12/2018, 2:27 PMAndreas Sinz
05/12/2018, 3:31 PMT
is and T::class.java
works, otherwise it doesntfrellan
05/12/2018, 3:31 PMfrellan
05/12/2018, 3:31 PMAndreas Sinz
05/12/2018, 3:31 PMKClass<T>
as argumentAndreas Sinz
05/12/2018, 3:31 PM