Welcome to mirror list, hosted at ThFree Co, Russian Federation.

LocalTestCollection.kt « syncadapter « davdroid « bitfire « at « java « androidTestStandard « src « app - github.com/bitfireAT/davx5-ose.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 26b5ae9ab62ed5a764d9fd56b9a4d3c8d1734ce6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/***************************************************************************************************
 * Copyright © All Contributors. See LICENSE and AUTHORS in the root directory for details.
 **************************************************************************************************/

package at.bitfire.davdroid.syncadapter

import at.bitfire.davdroid.db.SyncState
import at.bitfire.davdroid.resource.LocalCollection

class LocalTestCollection: LocalCollection<LocalTestResource> {

    override val tag = "LocalTestCollection"
    override val title = "Local Test Collection"

    override var lastSyncState: SyncState? = null

    val entries = mutableListOf<LocalTestResource>()

    override fun findDeleted() = entries.filter { it.deleted }
    override fun findDirty() = entries.filter { it.dirty }

    override fun findByName(name: String) = entries.filter { it.fileName == name }.firstOrNull()

    override fun markNotDirty(flags: Int): Int {
        var updated = 0
        for (dirty in findDirty()) {
            dirty.flags = flags
            updated++
        }
        return updated
    }

    override fun removeNotDirtyMarked(flags: Int): Int {
        val numBefore = entries.size
        entries.removeIf { !it.dirty && it.flags == flags }
        return numBefore - entries.size
    }

    override fun forgetETags() {
    }

}