Add save validation

dev
Aurelien Hubert 7 years ago
parent 48a0e1083f
commit 8816be68ae
  1. 11
      app/src/main/java/net/pokeranalytics/android/model/realm/CustomField.kt

@ -87,20 +87,21 @@ open class CustomField : RealmObject(), NameManageable, StaticRowRepresentableDa
} }
override fun isValidForSave(): Boolean { override fun isValidForSave(): Boolean {
return true return super.isValidForSave()
}
override fun alreadyExists(realm: Realm): Boolean {
return realm.where(this::class.java).equalTo("name", this.name).and().notEqualTo("id", this.id).findAll().isNotEmpty()
} }
override fun getFailedSaveMessage(status: SaveValidityStatus): Int { override fun getFailedSaveMessage(status: SaveValidityStatus): Int {
return when (status) { return when (status) {
SaveValidityStatus.DATA_INVALID -> R.string.cf_empty_field_error SaveValidityStatus.DATA_INVALID -> R.string.cf_empty_field_error
SaveValidityStatus.ALREADY_EXISTS -> R.string.duplicate_cf_error
else -> super.getFailedSaveMessage(status) else -> super.getFailedSaveMessage(status)
} }
} }
override fun alreadyExists(realm: Realm): Boolean {
return realm.where(this::class.java).equalTo("name", this.name).and().notEqualTo("id", this.id).findAll().isNotEmpty()
}
override fun isValidForDelete(realm: Realm): Boolean { override fun isValidForDelete(realm: Realm): Boolean {
return true return true
} }

Loading…
Cancel
Save