Convert parent to property

pull/1369/head
Alex Baker 5 years ago
parent d2a44d9fab
commit bfd1316c33

@ -8,8 +8,8 @@ import kotlinx.coroutines.runBlocking
import org.junit.Assert.* import org.junit.Assert.*
import org.junit.Test import org.junit.Test
import org.tasks.caldav.iCalendar.Companion.collapsed import org.tasks.caldav.iCalendar.Companion.collapsed
import org.tasks.caldav.iCalendar.Companion.getParent
import org.tasks.caldav.iCalendar.Companion.order import org.tasks.caldav.iCalendar.Companion.order
import org.tasks.caldav.iCalendar.Companion.parent
import org.tasks.data.TagDao import org.tasks.data.TagDao
import org.tasks.data.TagDataDao import org.tasks.data.TagDataDao
import org.tasks.injection.ProductionModule import org.tasks.injection.ProductionModule
@ -59,7 +59,7 @@ class OpenTasksPropertiesTests : OpenTasksTest() {
synchronizer.sync() synchronizer.sync()
assertEquals("1234", openTaskDao.getTask(listId, "abcd")?.task?.getParent()) assertEquals("1234", openTaskDao.getTask(listId, "abcd")?.task?.parent)
} }
@Test @Test

@ -14,8 +14,8 @@ import org.tasks.R
import org.tasks.Strings.isNullOrEmpty import org.tasks.Strings.isNullOrEmpty
import org.tasks.caldav.iCalendar import org.tasks.caldav.iCalendar
import org.tasks.caldav.iCalendar.Companion.fromVtodo import org.tasks.caldav.iCalendar.Companion.fromVtodo
import org.tasks.caldav.iCalendar.Companion.getParent
import org.tasks.caldav.iCalendar.Companion.order import org.tasks.caldav.iCalendar.Companion.order
import org.tasks.caldav.iCalendar.Companion.parent
import org.tasks.data.* import org.tasks.data.*
import org.tasks.preferences.DefaultFilterProvider import org.tasks.preferences.DefaultFilterProvider
import org.tasks.preferences.Preferences import org.tasks.preferences.Preferences
@ -154,7 +154,7 @@ class Upgrader @Inject constructor(
val updated: MutableList<CaldavTask> = ArrayList() val updated: MutableList<CaldavTask> = ArrayList()
for (task in upgraderDao.tasksWithVtodos().map(CaldavTaskContainer::caldavTask)) { for (task in upgraderDao.tasksWithVtodos().map(CaldavTaskContainer::caldavTask)) {
val remoteTask = fromVtodo(task.vtodo!!) ?: continue val remoteTask = fromVtodo(task.vtodo!!) ?: continue
task.remoteParent = remoteTask.getParent() task.remoteParent = remoteTask.parent
if (!isNullOrEmpty(task.remoteParent)) { if (!isNullOrEmpty(task.remoteParent)) {
updated.add(task) updated.add(task)
} }

@ -158,7 +158,7 @@ class iCalendar @Inject constructor(
caldavTask.vtodo = vtodo caldavTask.vtodo = vtodo
caldavTask.etag = eTag caldavTask.etag = eTag
caldavTask.lastSync = task.modificationDate caldavTask.lastSync = task.modificationDate
caldavTask.remoteParent = remote.getParent() caldavTask.remoteParent = remote.parent
caldavTask.order = remote.order caldavTask.order = remote.order
if (caldavTask.id == com.todoroo.astrid.data.Task.NO_ID) { if (caldavTask.id == com.todoroo.astrid.data.Task.NO_ID) {
caldavTask.id = caldavDao.insert(caldavTask) caldavTask.id = caldavDao.insert(caldavTask)
@ -225,14 +225,10 @@ class iCalendar @Inject constructor(
return null return null
} }
private fun Task.getParents(): List<RelatedTo> = relatedTo.filter(IS_PARENT) var Task.parent: String?
get() = relatedTo.find(IS_PARENT)?.value
fun Task.getParent(): String? { set(value) {
return relatedTo.find(IS_PARENT)?.value val parents = relatedTo.filter(IS_PARENT)
}
fun Task.setParent(value: String?) {
val parents = getParents()
when { when {
value.isNullOrBlank() -> relatedTo.removeAll(parents) value.isNullOrBlank() -> relatedTo.removeAll(parents)
parents.isEmpty() -> relatedTo.add(RelatedTo(value)) parents.isEmpty() -> relatedTo.add(RelatedTo(value))
@ -359,7 +355,7 @@ class iCalendar @Inject constructor(
if (priority < 5) max(1, priority) else 1 if (priority < 5) max(1, priority) else 1
else -> if (priority > 5) min(9, priority) else 9 else -> if (priority > 5) min(9, priority) else 9
} }
setParent(if (task.parent == 0L) null else caldavTask.remoteParent) parent = if (task.parent == 0L) null else caldavTask.remoteParent
order = caldavTask.order order = caldavTask.order
collapsed = task.isCollapsed collapsed = task.isCollapsed
} }

Loading…
Cancel
Save