realm-kotlin
realm-kotlin copied to clipboard
SyncSession - ProgressListeners
Implement relevant progress listener API's similar to Realm Java
enum class ProgressMode {
CURRENT_CHANGES,
INDEFINETELY
}
data class Progress(val transferredBytes: Long, val transferableBytes: Long) {
val fractionTransferred: Double
val transferComplete: Boolean
}
typealias ProgressListener = (progress: Progress) -> Unit
class SyncSession {
fun addDownloadProgressListener(mode: ProgressMode, listener: ProgressListener): Cancellable
fun addUploadProgressListener(mode: ProgressMode, listener: ProgressListener): Cancellable
fun uploadAllLocalChanges(timeout: Long = Long.MAX_VALUE, unit = TimeUnit.SECONDS)
fun downloadAllServerChanges(timeout: Long = Long.MAX_VALUE, unit = TimeUnit.SECONDS)
}
Are there any upcoming plans to have a ProgressListener available?
Note, that progress listeners have issues on Flexible Sync Realms (cannot remember exactly what), so we need to figure out if we need to handle those kinds of Realms in a special way.