Clean entries when deleted or type is not a list

dev
Aurelien Hubert 7 years ago
parent 1deb7d4d46
commit f2af822e29
  1. 10
      app/src/main/java/net/pokeranalytics/android/model/realm/CustomField.kt
  2. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/data/CustomFieldDataFragment.kt

@ -236,10 +236,16 @@ open class CustomField : RealmObject(), NameManageable, StaticRowRepresentableDa
}
/**
* Remove the deleted entries from realm
* Clean the entries if the type is not a list & remove the deleted entries from realm
*/
fun cleanDeletedEntries(realm: Realm) {
fun cleanEntries(realm: Realm) {
realm.executeTransaction {
if (!isListType) {
entriesToDelete.addAll(entries)
entries.clear()
}
entriesToDelete.forEach {
realm.where<CustomFieldEntry>().equalTo("id", it.id).findFirst()?.deleteFromRealm()
}

@ -202,7 +202,7 @@ class CustomFieldDataFragment : EditableDataFragment(), StaticRowRepresentableDa
override fun onDataSaved() {
super.onDataSaved()
customField.cleanDeletedEntries(getRealm())
customField.cleanEntries(getRealm())
}
/**

Loading…
Cancel
Save