Я не могу понять, как мне поступить с дженериками в kotlin.
Я пишу класс истории для изменений, внесенных в дженерики, которые должны получить любой тип класса в качестве параметра: после этого, Я бы сравнил старые значения объекта с новыми значениями объекта, и если я найду разницу, я напишу это в своем классе данных.
Мне удалось сделать это с Java с bean.getClass().getMethods();
,но я хочу попробовать перейти к Kotlin.
class ChangeHistoryUtils<T> (val originalBean : T, username : String , var modifiedBean: T? = null) {
data class ChangeHistory(val username: String, val fieldName : String,
val oldValue : String , val newValue : String , val date : LocalDate = LocalDate.now())
fun compareBeans(){
//how to get all originalBean getters and its values?
}
}
Я на самом деле застрял здесь: как получить все геттеры в моем T
объекте?
Давайте предположим, что я получу класс, который с 10 получателями, я хочу назвать все эти 10 получателей в originalBean
, и сравнить его значение с значениями в modifiedBean
.Если отличается, я напишу это в моем ChangeHistory
Спасибо